bash将字符串参数作为多个参数发送

时间:2015-05-05 19:31:59

标签: bash

所以我有一个bash脚本,它生成一系列我想要运行的命令。输出看起来像

$ program "command1 command2 ... commandN"

但该程序正在解释(因为它应该)" command1 command2 ... commandN"作为一个论点。

是否可以将字符串作为拆分参数传递给参数,以便程序将每个命令解释为单独的参数?

$ program command1 command2 ... commandN

感谢您的帮助。

1 个答案:

答案 0 :(得分:4)

我已完成此操作,实施您的方案: 我们的想法是使用" a b c"作为cat

的参数
$ echo a > a
$ echo b > b
$ echo c > c
$ args="a b c"

尝试" a b c" as"一个参数"

$ cat $args
cat: a b c: No such file or directory

分离参数的解决方法:

$ cat $(echo $args)
a
b
c

希望它可以帮到你

(所以你应该运行program $(echo "command1 command2 ... commandN")