Like a bash script, a bash function also accepts positional arguments that can be accessed using $
Access function argument in Linux bash shell:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
## Create a function myfun() { echo "Function Name: ${FUNCNAME[0]}" echo "Function No. Of Arguments: $#" echo "Function Arguments: $@" echo "Function First Argument: $1" } ## Execute the function myfun 1 2 3 ## function call using 1 2 3 as arguments ## returns ## Function Name: myfun ## Function No. Of Arguments: 3 ## Function Arguments: 1 2 3 ## Function First Argument: 1 |
Access script and function arguments in Linux bash shell:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
## Create a bash script cat << 'EOF' > file.sh #!/bin/bash echo "Script Name = $0" echo "Script No. Of Arguments = $#" echo "Script Arguments = $@" echo "Script First Argument: $1" myfun() { echo "Function Name: ${FUNCNAME[0]}" echo "Function No. Of Arguments: $#" echo "Function Arguments: $@" echo "Function First Argument: $1" } myfun $1 $2 $3 $4 EOF ## Execute the bash script with arguments ./file.sh 1 2 3 4 ## returns ## Script Name = ./file.sh ## Script No. Of Arguments = 4 ## Script Arguments = 1 2 3 4 ## Script First Argument: 1 ## Function Name: myfun ## Function No. Of Arguments: 4 ## Function Arguments: 1 2 3 4 ## Function First Argument: 1 |