このコードをbashで実行すると:
echo dog dog dos | sed -r 's:dog:log:'
出力が得られます:
log dog dos
すべての犬の出現を置き換えるにはどうすればよいですか?
Sedがパターンバッファーの内容のglobal置換を実行するように、g
修飾子を追加する必要があります。
echo dog dog dos | sed -e 's:dog:log:g'
Sedに関する素晴らしいドキュメントについては、 http://www.grymoire.com/Unix/Sed.html を確認してください。このglobalフラグはここで説明されています: http://www.grymoire.com/Unix/Sed.html#uh-6 =
GNU sed
の公式ドキュメントは http://www.gnu.org/software/sed/manual/ で入手できます。
最後にg
を追加する必要があります。これは「グローバル」の略です。
echo dog dog dos | sed -r 's:dog:log:g'
^