Definir una variable Una variable está definida desde el momento en que ha sido inicializada. El contenido de una variable se considera por el shell como un conjunto de caracteres En este ejemplo, el shell interpreta var1 como el comando a ejecutar, = y palabra1 como los dos argumentos del comando var1. Dicho de otra manera, no interpreta el simbolo = como símbolo de asignación. Asignar una cadena de caracteres con al menos un espacio El carácter de espacio tiene que estar protegido ya que es un carácter especial del shell (es un separador de palabras en la línea de comandos). Ejemplo: Cuando hay espacios se introduce entre comillas “” Variable indefinida Una variable que nunca se ha inicializado está vacía; utilizar una variable vacía no se considera un error en shell. Ejemplo: Borrar la definición de una variable Con el comando interno unset podemos borrar la definición de una variable. Ejemplo: Aislar el nombre de una variable Hay que poner especial atención en la concatenación del contenido de una variable con una cadena de caracteres para que el shell interprete correctamente el nombre de la variable. Ejemplo: Para el shell, el carácter _ forma parte del nombre de la primera variable: Para el shell, la primera variable se llama arch_. Por lo tanto es sustituido por su valor (que es vacio) y finalmente concatenado con el contenido de la variable fechadia. Para especificar al shell cuáles son los caracteres que forman parte del nombre de una variable, hay que poner el nombre de éste último entre {}. Sustitución de caracteres El shell ofrece la posibilidad de atribuir un valor por defecto a las variables no inicializadas o, al contrario, a las inicializadas. Expresión ${variable:-valor} Si la variable no está vacía, la expresión se substituye por el contenido de ésta. Si la variable está vacía, la expresión se substituye por valor. Ejemplo: Expresión ${variable:=valor} Si la variable no está vacía, la expresión se substituye por $variable. Si la variable está vacía, a la variable se le asigna un valor y la expresión se substituye por valor. Ejemplo: Expresión ${variable:+valor} Si la variable no está vacía, la expresión se substituye por valor. Si la variable está vacía, la expresión se substituye por $variable, luego estará vacía. Ejemplo: ${variable:?mensaje} Si la variable no está vacía, la expresión se substituye por $variable. Si la variable está vacía, el shell muestra el nombre de la variable seguido de la cadena de caracteres mensaje. NOTA: Si la variable está vacía y este comando está en un script de shell, éste muestra el mensaje y finaliza inmediatamente. Ejemplo: La variable var está vacía: Mensaje por defecto: Hasta aquí el capítulo primero de este curso, espero que te sea de gran utilidad, hasta la próxima. |
No hay comentarios:
Publicar un comentario