BASH-在bash sed字符串中使用带字符串的变量(2个双引号)

时间:2019-03-18 06:41:05

标签: bash sed

由于某些原因,该命令在我的telnet中有效:

[ -n "$server" ] && busybox sed -i "2s/.*/$(cat /web/data/servers/usa.txt | busybox sed -n "${server}p")/" /web/data/settings.txt

但是当我在cgi bash脚本中运行时,它没有给我正确的输出。我确定问题是这样,但我不知道如何解决:

$(cat /web/data/servers/usa.txt | busybox sed -n "${server}p")

因为里面还有另一个字符串(双引号),所以在外面发生冲突。请帮助,我是新来的。

编辑:例如: $ server = 7 ,它将在{strong> USA 7 的/web/data/servers/usa.txt的第7行中获取字符串,然后将其替换为/web/data/settings.txt的第2行。 在我的telnet中,它输出我想要的值,但是当我在cgi脚本中运行它时却没有。我在两个中使用完全相同的代码。我也有一个相同但没有$(...)的代码,它输出了我想要的正确值。

0 个答案:

没有答案