【发布时间】:2017-06-25 23:19:17
【问题描述】:
我想要实现的是从文件中读取命令行参数并使用它们调用命令。所以基本上我需要通过 bash 变量传递参数。问题是某些参数中有空格。我该怎么做?
不工作的代码,来说明问题:
file.txt 内容(引号只是为了显示两个不同的参数):
"aaa bbb" "xxx yyy"
shell脚本:
ARGS=$(cat file.txt)
/some/command $ARGS
/some/command 应该接收两个参数:aaa bbb 和 xxx yyy。我确实可以控制生成的 file.txt 和 shell 脚本本身。
【问题讨论】:
-
我认为文件内容对正确答案有很大影响。您可以在 file.txt 中添加更多数据(即多行)吗?
-
您能否澄清一下您是否打算将
"aaa bbb" "xxx yyy"用作传递给您的命令的一个参数(带有文字引号),或者这是否应该被解释为具有各自值的两个参数@987654327 @ 和xxx yyy? -
@GeorgeVasiliou 正如我所写的,我可以完全控制生成的文件和脚本。我可以给他们写任何东西。
-
@Fred 引用只是为了说明两个不同的论点。
-
你是从一个错误的前提开始的,即这种类型的配置文件是个好主意;不是。