Previous post

Shell Scripting: Linux variables

Linux variables have the prefix $. Variables that will be useful in shell scripting are listed below.

$$ Process ID number of the shell in execution
$? Variable indicating Exit status (from the last command that got executed)
$* Entire argument string in the command line (excluding script name)
$# Number of arguments in the command line (not counting the shell script name)

To access arguments passed to a script, following variables are used.

$0 Name of the program (with entire path)
$1 First argument passed in the command line
$2 Second argument passed in the command line
$n Nth argument passed in the command line

To move or shift to a specified argument in the list of arguments, “shift” command is used. For example, to shift 1 argument just type “shift” or “shift 1” and to shift to the third argument in the list type “shift 2“.


echo “Process ID number = $$”
echo “Program name = $0”
echo “Argument string = $*”
echo “Total arguments is $#”
echo “Argument 1 has the value $1”
shift 2
echo “Now argument 1 has the value $1”

Program Results

$ arg1 arg2 arg3 arg4

Process ID number = 28141
Program name = /tmp/myshells/
Argument string = arg1 arg2 arg3 arg4
Total arguments is 4
Argument 1 has the value arg1
Now argument 1 has the value arg3

Written by kurinchilamp

Website: http://

Leave a Reply

Your email address will not be published. Required fields are marked *