本文共 813 字,大约阅读时间需要 2 分钟。
# 文件名 有路径则包括路径$0# 1-9 $1...$9 以空格分开 大于9 要加大括号 要${10} ${11}$n# 脚本后面跟的总个数 # sh para.sh 1 2 3 则个数为3$## 从第一个参数开始 拼成字符串 空格分隔 1 2 3 4 5$*#$@#当 $* 和 $@ 不被双引号" "包围时,它们之间没有任何区别,都是将接收到的每个参数看做一份数据,彼此#之间以空格来分隔# 但是当它们被双引号" "包含时,就会有区别了:# "$*"会将所有的参数从整体上看做一份数据,而不是把每个参数都看做一份数据。# "$@"仍然将每个参数都看作一份数据,彼此之间是独立的
#!/bin/bashecho 'p[0]='$0echo 'p[1]='$1echo 'p[2]='$2echo 'p[3]='$3echo 'p[4]='$4echo 'p[5]='$5echo 'p[6]='$6echo 'p[7]='$7echo 'p[8]='$8echo 'p[9]='$9echo 'p[10]='$10echo 'p[10] {10}='${10}echo 'p[11]='$11echo '参数个数='$#echo '$*='$*echo '$@='$@echo '$@='"$@"echo "$@"echo "$*"# 单行 1 2 3 4 5echo "print each param from \"\$*\""for var in "$*"do echo "$var"done# 相当于数组echo "print each param from \"\$@\""for var in "$@"do echo "$var"done
#执行sh para.sh {a..z}sh para.sh 1 2 3 4 5 6 7 8 9 10sh para.sh {1..11}
转载地址:http://rpawb.baihongyu.com/