Answers:
通常的方法是保存arg1("$1"
)的副本并将参数移动一个,因此可以将整个列表引用为"$@"
:
#!/bin/sh
arg1="$1"
shift 1
/path/to/a/program "$@"
bash当然有一些数组支持,但是对于提出的问题并不需要它。
如果arg1是可选的,则应按以下方式进行检查:
if [ $# != 0 ]
then
arg1="$1"
shift 1
fi
$@
告诉外壳将每个参数双引号(如果参数包含有趣的字符(例如括号或星号),则可以做得很好。如果您不在乎,那么简单就行了$*
……
$@
?