Variables especiales en Unix/Linux

La lección anterior ya advertía sobre el uso de caracteres especiales en los nombres de variables. Esto se debe a que estos caracteres se usan en los nombres de variables especiales en Unix. Estas variables están reservadas para funciones especiales.

Por ejemplo, el símbolo $ representa el ID de proceso actual o el PID de shell.

  $ echo $$ 

El comando anterior escribirá el ID de proceso del shell actual:

  29949 

La siguiente tabla enumera las variables especiales que se pueden usar en los scripts de shell:

Descripción del archivo $ 0 El nombre de archivo del script actual. $n Estas variables corresponden a los argumentos del script de llamada. Aquí n es un entero decimal positivo que corresponde a la posición de un argumento (el primer argumento es $ 1, el segundo argumento es $ 2). PS El número de argumentos para proporcionar el script. PS Todos los parámetros están encerrados entre comillas dobles. Si el script tiene dos argumentos, $ * equivale a $ 1 $ 2. PS Todos los parámetros se citan individualmente. Si el script tiene dos argumentos, $ @ equivale a $ 1 $ 2. ¿dólar? El estado inicial del comando anterior se está ejecutando. $$ El número de procesos en curso. Para scripts de shell, este es el número de identificadores de proceso en los que se ejecutan. ¡dólar! El número de proceso del último comando en segundo plano.

Argumentos de línea de comando en Unix/Linux

Las variables de línea de comando $ 1, $ 2, $ 3, $ 9 son argumentos posicionales, $ 0 apunta al comando, programa, script de shell o función real, y $ 1, $ 2, $ 3, $ 9 son argumentos de comando.

Los siguientes scripts utilizan variables especiales de línea de comandos:

  #! / bin / sh echo "File Name: $ 0" echo "First Parameter: $ 1" echo "Second Parameter: $ 2" echo "Quoted Values: $ @" echo "Quoted Values: $ *" echo "Total Number of Parameters: $ # " 

Aquí hay un ejemplo de implementación del script anterior:

  $ ./ test .  sh Zara Ali File Name : ./ test .  First Parameter : Zara Second Parameter : Ali Quoted Values : Zara Ali Quoted Values : Zara Ali Total Number of Parameters : 2 

Parámetros especiales $ * y $ @ en Unix/Linux

Hay parámetros especiales que permiten el acceso simultáneo a todos los parámetros de la línea de comandos. Tanto $ * como $ @ funcionarán de manera similar, a menos que estén entre comillas ("").

Ambos parámetros definen todos los parámetros de la línea de comandos, pero $ * acepta la lista completa como parámetros, con espacios entre ellos, y $ @ acepta la lista completa como parámetros que se distinguen como parámetros.

Podemos escribir el siguiente script de shell para manejar algunos argumentos de línea de comando desconocidos con argumentos especiales $ * o $ @.

  #! / bin / sh for TOKEN in $ * do echo $ TOKEN done 

Ejecutamos la plantilla para el script anterior:

  $ ./ test .  sh Old Zara Ali 10 Years Old Zara Ali 10 Years 

notas : aquí porque termino es una forma de ciclo que discutiremos en la próxima lección.

Estado de salida (Exit) en Unix / Linux

$ variable? Muestra el estado inicial del comando anterior.

El estado de salida es el valor numérico devuelto cuando se completa cada comando. En general, la mayoría de los comandos devuelven un estado de salida de 0 en caso de éxito y 1 en caso de error.

Algunos comandos devuelven el estado de salida y otras adiciones por sus propios motivos. Por ejemplo, algunos comandos distinguen el tipo de error y devuelven múltiples valores de salida según el tipo de error.

El siguiente es un ejemplo de un comando ejecutado con éxito:

  $ ./ test .  sh Zara Ali File Name : ./ test .  First Parameter : Zara Second Parameter : Zara Ali Quoted Values : Zara Ali Total Number of Parameters : 2 $ echo $ ?  $ 0 

Según el punto de entrenamiento

Último artículo: Uso de variables de Shell

Próxima lección: Uso de arreglos en Shell

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir
error: Content is protected !!