linux - Sed命令替换文件中的字符串不起作用

标签 linux bash shell sed gnu

尝试从我的虚拟机执行以下 sed 命令时

sudo -S shv6 <IP> "sed -i 's#<RDKBrowserHtmlViewItem>INFO</RDKBrowserHtmlViewItem>#<RDKBrowserHtmlViewItem>DEBUG</RDKBrowserHtmlViewItem><XREPluginGraphicsItem>DEBUG</XREPluginGraphicsItem>#g' /op/log.xml"

我观察到以下错误信息

sh: -c: line 0: syntax error near unexpected token `newline'
sh: -c: line 0: `sed -i s#<RDKBrowserHtmlViewItem>INFO</RDKBrowserHtmlViewItem>#<RDKBrowserHtmlViewItem>DEBUG</RDKBrowserHtmlViewItem><XREPluginGraphicsItem>DEBUG</XREPluginGraphicsItem>#g /op/log.xml'

我的 sed 命令有什么问题。

最佳答案

下面的命令终于起作用了。

sudo -S shv6 <IP> "sed -i 's#\\<RDKBrowserHtmlViewItem\\>LOG\\<\\/RDKBrowserHtmlViewItem\\>#\\<RDKBrowserHtmlViewItem\\>DEBUG\\<\\/RDKBrowserHtmlViewItem\\>\\<RDKBrowserHtmlViewItem\\>DEBUG\\<\\/RDKBrowserHtmlViewItem\\>#g' /op/log.xml"

关于linux - Sed命令替换文件中的字符串不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56472431/

相关文章:

linux - TZ(时区)在 "/etc/crontab"中不起作用

linux - 在 unix date 命令中使用变量

java - 使用脚本运行 java jar 文件

java - 从命令行搜索 Maven 过滤器

c - 从 Linux 内核模块共享内存以供用户空间进程访问

regex - 0个或多个空格的grep正则表达式

linux - 如何在linux中检查 'if-then-else-fi'中的多个字符串?

linux - 如何使 wc 在没有 FIND 的情况下递归工作

linux - 在 vim 中自动编写 for 循环?

sql - bash 脚本 curl 命令中的单引号不断转换为双引号