【问题标题】:sed over ssh doesn't escape backslashsed over ssh 不会转义反斜杠
【发布时间】:2016-09-30 21:18:06
【问题描述】:

我正在尝试在文件中的“rezhome”之前添加一行,如下所示:

...
app3-reservation, \
app4-reservation, \
app5-reservation, \
rezhome

当我使用以下命令在本地运行时,它工作正常。

sed -i 's/rezhome/app5-reservation, \\\n&/' grouphost.cfg

但是使用 ssh 反斜杠没有转义,我得到以下结果

ssh localhost "sed -i 's/rezhome/app5-reservation, \\\n&/' /path/grouphost.cfg"

...
app3-reservation, \
app4-reservation, \
app5-reservation, \nrezhome

有什么帮助吗?

【问题讨论】:

    标签: linux bash ssh sed


    【解决方案1】:

    \sedssh 处理,因此您需要进一步转义它们才能与两者一起使用。试试:

     ssh localhost "sed -i 's/rezhome/app5-reservation, \\\\\n&/' /path/grouphost.cfg"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-19
      • 2015-09-21
      • 2011-11-09
      • 2017-04-21
      相关资源
      最近更新 更多