2010-07-08 16 views

Respuesta

18

aquí: http://sillydog.org/unix/scrpt/scrpt2.2.2.php

$ 1 - $ 9 Estas variables son las parámetros posicionales.

$ 0 el nombre del comando que se está ejecutando actualmente.

$ # el número de argumentos posicionales dados a esta invocación del shell.

$? el estado de salida del último comando ejecutado es dado como una cadena decimal. Cuando se completa con éxito un comando , devuelve el estado de salida de 0 (cero), de lo contrario, devuelve un estado de salida distinto de cero .

$$ el número de proceso de este shell - útil para incluyendo en los nombres de archivo, para que sean únicos.

$! la identificación del proceso del último comando se ejecuta en el fondo.

$ - las opciones actuales suministradas a esta invocación del shell.

$ * una cadena que contiene todos los argumentos para el shell , a partir de $ 1.

$ @ igual que el anterior, excepto cuando se indique.

Más recursos:

+0

Tenga en cuenta * csh * 's '$? Name', que devuelve 1 si la variable' nombre' está definida y 0 en caso contrario. (Viniendo del mundo Perl, me pareció extremadamente confuso en * Unix Power Tools *). –

1

De the Linux Documentation Project (con $ _ adicional variable):

$* expande a los parámetros posicionales, empezando por uno. Cuando la expansión ocurre entre comillas dobles, se expande a una sola palabra con el valor de cada parámetro separado por el primer carácter de la variable especial IFS.

[email protected] Se amplía a los parámetros posicionales, comenzando desde uno.Cuando la expansión ocurre entre comillas dobles, cada parámetro se expande a una palabra separada.

$# Se expande a la cantidad de parámetros posicionales en decimales.

$? Se expande al estado de salida de la última línea de primer plano ejecutada.

$- Un guion se expande a los indicadores de opciones actuales tal como se especifican al invocar, mediante el comando integrado del conjunto, o aquellos establecidos por el propio shell (como el -i).

$$ Se expande al ID de proceso del shell.

$! Se expande al ID de proceso del último comando de fondo ejecutado (asíncrono).

$0 Se expande al nombre del script de shell o shell.

$_ La variable de subrayado se establece en el inicio del shell y contiene el nombre de archivo absoluto del shell o script que se ejecuta como se pasa en la lista de argumentos. Posteriormente, se expande al último argumento del comando anterior, después de la expansión. También se establece en la ruta completa de cada comando ejecutado y colocado en el entorno exportado a ese comando. Al consultar el correo, este parámetro contiene el nombre del archivo de correo.

2

La mejor referencia que hay, es El estándar POSIX de Shell Especificación, especialmente la sección sobre Special Parameters.

Cuestiones relacionadas