有一个脚本调用其他程序.以下是program.sh.它可能看起来没有意义,但我省略了很多细节......让我们说我想坚持结构.
#!/usr/bin/env bash
function run_this {
/usr/bin/foo -A -B -C
}
run_this
Run Code Online (Sandbox Code Playgroud)
我想改变传递给/usr/bin/foo的参数传递给的参数program.sh.因此,举例来说,如果你打电话program.sh --quiet,然后/usr/bin/foo -A -B -C -X.实现这一目标的最佳方法是什么?
使用数组.
cmd=(/usr/bin/foo -A -B -C)
if somecond; then
cmd+=(-X)
fi
"${cmd[@]}"
Run Code Online (Sandbox Code Playgroud)