sed: 未终止的 's' 命令`

18 浏览
0 Comments

sed: 未终止的 's' 命令`

我正在编写一个好的正则表达式,以替换文本文件中的一些IP地址。

sed -r "s/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/${APP_IP}/g" /path/to/my/file

然而它给出了错误信息:sed: -e expression #1, char 49: unterminated 's' command

我需要双引号,否则它会将所需的字符串替换为文字的变量名:${APP_IP}

我错过了什么?

0
0 Comments

在这个问题中,用户遇到了"sed: unterminated 's' command"错误。这个错误是由于变量中包含特殊字符导致的。用户通过手动设置变量$APP_IP为测试IP,问题得到解决。然而,如果从ping命令的输出中捕获变量,就会出现这个错误。用户尝试了将变量中的换行符删除,并成功解决了问题。另外,用户还提供了另一种解决方法,即使用APP_IP=$(echo -n "$APP_IP")。

0