2017-06-28 42 views
-3
sed -i -e "s/.*web_listen_uri.*/web_listen_uri = http://$staticip:9000/ g" 

这个字符串有什么问题?当执行其显示的 的sed:-e表达式#1,焦炭45:未知的选项为'S'执行sed编辑器时出错

我已经带分隔符但还是同样的错误

+0

你必须在替换字符串中转义'/'。 –

+0

花一点时间,看看命令。你看到了什么? – hek2mgl

+0

我试图逃跑/但不工作 – Sreejith

回答

0

将您的sed命令修改为sed -i -e "s/.*web_listen_uri.*/web_listen_uri = http:\/\/$staticip:9000/g"。而这里的例子来使用这个命令,

$ cat test 
aaaaa web_listen_uri. bbbbb 
$ sed -i -e "s/.*web_listen_uri.*/web_listen_uri = http:\/\/$staticip:9000/g" test 
$ cat test 
web_listen_uri = http://192.168.1.1:9000 

你需要逃避/\/sed使用。

0

你必须替换字符串逃脱/尝试。此外,在最后的g之前还有一个空间,这可能也是有问题的。

+0

其实我是新来的这个sed编辑器可以请你告诉我如何逃避/在字符串中 – Sreejith

+0

只要你想匹配就用'\ /'/' –

+0

感谢你的回答 – Sreejith