Special shell variables

$1 - $9       these variables are the positional parameters.

$0            the name of the command currently being executed.

$#            the number of positional arguments given to this
              invocation of the shell.

$?            the exit status of the last command executed is
              given as a decimal string.  When a command
              completes successfully, it returns the exit status
              of 0 (zero), otherwise it returns a non-zero exit
              status.

$$            the process number of this shell - useful for
              including in filenames, to make them unique.

$!            the process id of the last command run in
              the background.

$-            the current options supplied to this invocation
              of the shell.

$*            a string containing all the arguments to the
              shell, starting at $1.

$@            same as above, except when quoted.


 

Notes

$* and $@ when unquoted are identical and expand into the arguments.

"$*" is a single word, comprising all the arguments to the shell, joined together with spaces. For example '1 2' 3 becomes "1 2 3" .

"$@" is identical to the arguments received by the shell, the resulting list of words completely match what was given to the shell. For example '1 2' 3 becomes "1 2" "3"

你可能感兴趣的:(variable)