我在我的配置程序中运行以下内容
sed -i 's/DocumentRoot \/var\/www\/DocumentRoot \/var\/www\/app\/web-root\/\g' /etc/apache2/sites-available/000-default.conf
然而我收到错误:sed: -e expression #1, char 69: unterminated 's' command
- 这是该位置的连字符( - )。我试过逃避它(\-
)无济于事。
有什么想法吗?
答案 0 :(得分:1)
你的行:
sed -i 's/DocumentRoot \/var\/www\/DocumentRoot \/var\/www\/app\/web-root\/\g ...
^
sed需要s/.../.../g
您已经在/
标记之前的最后一个g
进行了转义,此外,您还转发了g
标记。至少这个错误不会让你的sed命令失效。
/(slash)
,那么更好的是,您选择另一个分隔符。它可以保存那些数十条反斜杠:
sed -i 's#foo/bar/blah#foo1/bar1/blah1#g` file