# $* Returns a single string (``$1, $2 ... $n'') # comprising all of the positional parameters # separated by the internal field separator character #(defined by the IFS environment variable). # $0 Refers to the name of the script itself echo $0 $1 $2 $3 ' > echo $1 $2 $3'
# $@ Returns a sequence of strings # (``$1'', ``$2'', ... ``$n'') # wherein each positional parameter # remains separate from the others. args=("$@")
echo ${args[0]} ${args[1]} ${args[2]}
echo $@
# $# Refers to the number of arguments # specified on a command line. echo $#
output:
test@test$ ./hello.sh Mark Tom John ./hello.sh Mark Tom John > echo $1 $2 $3 Mark Tom John Mark Tom John 3
0 تعليقات