我试图将现有文件中的一行替换为
sed -i -e 's/# elasticsearch.url: "http://localhost:9200"/elasticsearch.url: "http://myOwnHost:9200"/g' config/kibana.yml但我犯了个错误
sed: -e expression #1, char 32: unknown option to `s'我能想出逃到这里来的方法和方法。我对苏富比很陌生。
发布于 2016-04-22 14:10:02
在sed语句中,/字符使用分隔符。例如s/search/replace/g。由于您的字符串中有/s,所以这会使事情变得一团糟。虽然/通常用作分隔符,但您可以使用其他字符。在您的例子中,我将使用管道|,例如s|search|replace|g。或者,您可以使用/并转义字符串中的斜杠:\/,但这会变得很麻烦。
发布于 2016-04-22 14:18:31
你必须用反斜杠来逃避正斜杠字符!
sed -i -e 's/# elasticsearch.url: "http:\/\/localhost:9200"/elasticsearch.url: "http:\/\/myOwnHost:9200"/g' config/kibana.ymlhttps://stackoverflow.com/questions/36795974
复制相似问题