- 01Setting up (what you'll need)
- 02Your first shell script (echo)
- 03Using variables
- 04Command-line arguments ($1, $2 ...)
- 05Branching (the if statement)
- 06Repeating (the for loop)
- 07Repeating (the while loop)
- 08Writing your own function
- 09Working with arrays
- 10Command substitution ($())
- 11Working with strings (parameter expansion)
- 12Reading from standard input (read)
- 13Exit status and && / ||
- 14Pipes and redirection
- 15The case statement
- 16Arithmetic ($(( )))
- 17The basics of grep, sed and awk
- 18Argument checks and error handling
- 19Function return values and exit codes
- 20[Project] Build a small log-tallying script
Command-line arguments ($1, $2 ...)
This lesson covers how a script receives the arguments passed to it.
The arguments passed to a script are available in order as variables: $1 (the first), $2 (the second), and so on. $# is the number of arguments and $0 is the script's own name.
The sample code assumes it was run as ./greet.sh Alice 14 and builds a greeting from $1 and $2.
A common early stumble is not allowing for the case where no argument was passed. Carrying on with an empty $1 can fail in unexpected ways, so it is worth making a habit of checking the argument count ($#).
In professional work, the usual pattern is to take values such as the target environment or the file to process as arguments, producing a script general enough to reuse.
๐งช This site can't compile or run Shell Script directly, so it checks on the spot whether what you typed matches the reference code (scoring happens entirely in your browser โ nothing is sent anywhere).
