假设我有一个如下调用的zsh函数:
myFunction arg1 arg2 arg3 ...
我基本上希望myFunction()
做以下事情:
myFunction () {
some-program prefix:arg1 or prefix:arg2 or prefix:arg3 ...
}
这就是我尝试这样做的方式:
myFunction () {
local args="prefix:${1}"
shift
for arg; do
args+=" or prefix:${arg}"
done
some-program $args
}
当我调用此函数时,some-program
没有按预期工作,我的理解是因为它将$args
解释为单个参数而不是许多单独的参数参数。如何将$args
给出的字符串解释为几个单独的参数?