0

構成ファイルのデフォルトのパスワード ハッシュを置き換える際に問題があります。

sed -i 's/default_password_crypted: "[^"]*"/default_password_crypted: "\$1\$mF86/UHC\$WvcIcXred6crBz2onWxyac."/' input.txt

次のエラーが表示されます:

sed: -e 式 #1、文字 74: `s' への不明なオプション

作品:

search pattern: default_password_crypted: "$1$mF86/UHC$WvcIcX2t6crBz2onWxyac."

sed -i 's/default_password_crypted: "[^"]*"/default_password_crypted: "1234567890"/' input.txt

ハッシュの置換パターンをどのように書く必要がありますか?

どうも

4

1 に答える 1

0

/区切り文字であるため、置換内のリテラルをエスケープする必要があります。

sed -i 's/default_password_crypted: "[^"]*"/default_password_crypted: "\$1\$mF86\/UHC\$WvcIcXred6crBz2onWxyac."/' input.txt

または、次のような別の文字を使用するだけです,

sed -i 's,default_password_crypted: "[^"]*",default_password_crypted: "\$1\$mF86,UHC\$WvcIcXred6crBz2onWxyac.",' input.txt

$また、置換の内部をエスケープする必要はありません。

于 2013-07-17T19:49:52.857 に答える