【发布时间】:2015-12-27 13:37:39
【问题描述】:
考虑以下命令:
ssh MACHINE sed -i 's#\[ "\$JBOSS_MODE" = "standalone" \]#\[ "\$JBOSS_MODE" = "sim_standalone" \]#' /tmp/sim-wildfly
当我从命令行运行这个命令时,我得到这个错误:
sed: -e expression #1, char 3: unterminated `s' command
但是,当我先通过 SSH 连接到该特定机器,然后运行命令的 sed 部分时,它可以正常工作:
> ssh MACHINE
> sed -i 's#\[ "\$JBOSS_MODE" = "standalone" \]#\[ "\$JBOSS_MODE" = "sim_standalone" \]#' /tmp/sim-wildfly
知道为什么会发生这种情况吗?
编辑:我相信这与我如何转义字符有关,因为我只是尝试了没有转义字符的简单测试替换,并且效果很好。我尝试过双重转义,但也没有用。
【问题讨论】: