如果我有一个批处理文件,并且只想使用所有给定的脚本参数,则可以使用%*
。
示例 a.bat
echo %*
呼叫a.bat 1 2 3 4
会给出:
1 2 3 4
我如何在bash脚本中做同样的事情?
答案 0 :(得分:3)
"$*"
将返回一个字符串,所有参数用空格分隔。
"$@"
将返回N个字符串,每个参数一个。
示例a.sh
:
echo "$@"
呼叫a.sh 1 2 3 4
会给出:
1 2 3 4
a.sh
的另一个示例:
printf "%s\n" "$@"
呼叫a.sh 1 '2 2' '3 3 3' '4 4 4 4'
会给出:
1
2 2
3 3 3
4 4 4 4
与a.sh
相反:
printf "%s\n" "$*"
将打印:
1 2 2 3 3 3 4 4 4 4