Command line parameters are a way to pass information into a program or script in order for it to do what you want it to. Some examples of command line parameters:
$ ls -l $ cat textfile
The command line parameters here are the “-l” and “textfile”.
How are command line parameters accessed within a shell script? They are stored in these variables:
- “$0”: This holds the name of the command.
- “$1”: This holds the first parameter.
- “$2”: This holds the second parameter.
- “$3”: This holds the third parameter and the pattern repeats.
- “$#”: This holds the number of parameters that have been passed.
- “$@”: This holds all of the parameters
Lets make a simple script call it parameters.sh:
#!/bin/sh echo "Name of script: $0" echo "First parameter: $1" echo "Second parameter: $2" echo "Number of parameters: $#" echo "All parameters: $@"
When we run the script you should get the following output
Input:
$ sh parameters.sh hello world
Output:
Name of script: parameters.sh First parameter: hello Second parameter: world Number of parameters: 2 All parameters: hello world