bash sed:-e表达式#1,char 21:s'的数字选项;命令不能为零

bash sed:-e表达式#1,char 21:s'的数字选项;命令不能为零,bash,sed,Bash,Sed,我想重写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 如何解决此问题?这是因为您尝试注入的文本包含sed用作分隔符的/。 您需要转义此斜杠,或者使用不同的sed分

我想重写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

如何解决此问题?

这是因为您尝试注入的文本包含sed用作分隔符的
/

您需要转义此斜杠,或者使用不同的sed分隔符。Sed可以接受任何字符作为分隔符,即#


这是因为您尝试注入的文本包含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