【发布时间】:2017-02-28 02:17:36
【问题描述】:
我在 shell 脚本中使用以下命令
echo $(jq -n '"1\n2\n3" | gsub("\n"; @t " * ")')
预期的输出是
"1 * 2 * 3"
但在 shell 脚本中,它会将 '\n' 替换为相应目录中的所有文件名(即 '*' 在此上下文中被视为特殊参数)。
1 file1 file2 2 file1 file2 3
当我们在终端中执行相同的操作时,它会给出预期的输出。
谁能帮我解决这个问题?
【问题讨论】:
-
你试过引用替换吗?
-
@IgnacioVazquez-Abrams 哦,天哪,我错过了。添加后它起作用了。谢谢
-
你为什么要使用
echo?只需运行jq