Special shell variables There are some variables which are set internally by the shell and which are available to the user:
| Name | Description | |
| $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 impletes 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. | |
Tips ::
$* 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"..
No comments :
Post a Comment