Working with Functions in Bash: Reference and Examples
Last updated:Table of Contents
Function without arguments
function do_something() {
echo "this gets printed to standard output"
}
# to call it, just use its name
do_something
Access function arguments
$1 is the first argument, $2 is the second argument, etc.
function say_something() {
echo "$1"
}
Using the function:
say_something "foobar" (prints "foobar")
say_something (prints nothing because no arguments were passed)
say_something foo bar (prints "foo" only, the second argument is not used)
Number of arguments passed
To get the number of arguments sent to the function use $#
myfunction() {
if [[ $# -eq 0 ]]; then
# no parameters passed
elif [[ $# -eq 1 ]]; then
# 1 parameter passed
else
# 2 or more parameters passed
fi
}