所以我有一个 bash 脚本,它生成一串我想要运行的命令。输出看起来像
$程序“command1 command2 ... commandN”
但程序正在将“command1 command2 ... commandN”解释为(它应该)作为一个参数。
是否可以将字符串作为拆分参数传递给参数,以便程序将每个命令解释为单独的参数?
$ 程序 command1 command2 ... commandN
感谢您的帮助。
最佳答案
我已经完成了这个,实现了你的场景:
这个想法是使用“a b c”作为 cat
$ echo a > a
$ echo b > b
$ echo c > c
$ args="a b c"
尝试将“a b c”作为“一个参数”
$ cat $args
cat: a b c: No such file or directory
分离参数的解决方法:
$ cat $(echo $args)
a
b
c
希望对你有帮助
(所以你应该运行 program $(echo "command1 command2 ... commandN")
关于bash 将字符串参数作为多个参数发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30061682/