使用空格分隔参数:
sh test.sh "a b c "
在test.sh
中,您应该如何使用for
循环来获取参数a b c
?
答案 0 :(得分:1)
作为一个论点:
for i in "$@"
do
echo "$i"
done
作为单独的论点:
for i in $* # Or $@
do
echo "$i"
done
如果你调用:
./test.sh a b c
但是你希望所有三个参数都被视为一个,然后:
for i in "$*"
do
echo "$i"
done
(实际上不需要循环; echo "$*"
可以完成这项工作。)
答案 1 :(得分:0)
即便如此:
#!/bin/sh -e
for i; do
echo :$i:
done
这相当于:for i in "$@"; do ...
所以你会得到:
$ sh script.sh 'a b c '
:a b c :