RHEL9 sedコマンドで文字列を置換するサンプル
環境
Red Hat Enterprise Linux release 9.2 (Plow)
書式
sed [オプション] スクリプトコマンド 入力ファイル
操作例
1.最初にマッチしたものを置換します
data.txtファイル の各行で、 aaa と 最初にマッチした箇所 を AAA に置換します。
# cat data.txt
555aaa222aaa
aaa222ccc444
ddd444aaa555
実行結果
# sed s/aaa/AAA/ data.txt 555AAA222aaa AAA222ccc444 ddd444AAA555
2.全て置換
data.txtファイル の各行で、 aaaにマッチする全ての箇所 を BBB に置換します。
# cat data.txt 555aaa222aaa aaa222ccc444 ddd444aaa555
置換結果
# sed s/aaa/BBB/g data.txt 555BBB222BBB BBB222ccc444 ddd444BBB555
3.文字列を置換して上書き
-iオプション を利用すると置換結果で上書きできます。
# cat data.txt
555aaa222aaa
aaa222ccc444
ddd444aaa555
置換を行います
# sed -i s/aaa/CCC/ data.txt
# cat data.txt 555CCC222aaa CCC222ccc444 ddd444CCC555