我想在conf文件中重写一行。应放在第88行的文字是:auth 0.0.0.0/0 - - 我的命令是:
sed -i '88s/.*/auth 0.0.0.0/0 - -/' /etc/opt/ss5/ss5.conf
但我收到错误
sed: -e expression #1, char 21: number option to `s' command may not be zero
我该如何解决这个问题?
答案 0 :(得分:5)
这是因为您尝试注入的文本包含/
,它被sed用作分隔符
您需要转义此斜杠,或使用其他sed分隔符。 Sed可以接受任何字符作为分隔符,即#。
sed -i '88s/.*/auth 0.0.0.0\/0 - -/' /etc/opt/ss5/ss5.conf
#OR
sed -i '88s#.*#auth 0.0.0.0/0 - -#' /etc/opt/ss5/ss5.conf