Featured
Shell
Special Shell Variables
Posted by Rafael Lopes on .Do you know that shell has some willy-wonka-like variables? Why not consider them while writing your own scripts?
$1 $2 $3 $4 $5 $6 $7 $8 $9are positional parameters, the parameters received when the program is called. If you want to use more than 9 arguments, just use braces, like${10},${11};$0returns the name of the command currently being executed (it´s like the zero positional parameter, doesn´t make sense?): in a shellscript, you can combine it withbasename $0to print the current script name without any dots or else;$#is the number of positional arguments given to this invocation of the shell;$?returns the exit status (or function returns) of the last command executed is given as a decimal; string. When a command completes successfully, generally it returns the exit status of 0 (zero) if everything was ok, otherwise it returns a non-zero exit status, I said generally;$$represents the process number of this shell – useful for including in filenames, to make them unique, or just anything you want to make unique;$!tell you the process id of the last command run in the background;$-the current options supplied to this invocation of the shell;$*represents a string separated by spaces containing all the arguments passed to the shell via positional parameters, starting at $1;$@is the same as above, except when quoted.
Rafael Lopes (?)
Tech-lover, also loves photography and curiosity. AWS Cloud Ninja. What I enjoy? Learn from unknown internet blogs like this one.
View Comments...