2017-04-04 11 views
0

confファイルで行を書き直したいと思います。ライン88上に置かれるべきテキストがある:0.0.0.0/0 AUTH - - 私のコマンドは次のとおりです。bash sed:-e式#1、char 21: `s 'コマンドのnumberオプションはゼロではないかもしれません。

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 

を取得しています問題 ?

答えて

4

これは、注入しようとするテキストにセプトとしてセパレータとして使用されている/が含まれているためです。
このスラッシュをエスケープするか、別の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 
関連する問題