スポンサーリンク
sedで行数を指定して文字列を置き換える
※MACターミナル(BSD系)での動作確認です。
ただし、gsedをインストールして、aliasでalias sed='gsed'としています。
例えば、下記のin.txtがあったとします。
$ cat in.txt 1awk 2find 3grep 4wc
N行目を str の文字列にcコマンドで置き換える場合は下記のように書きます。
sed 'Nc str' file.txt
例えば、3行目を after の文字列に置き換える場合は下記のように書きます。
$ sed '3c after' in.txt 1awk 2find after 4wc
検索にかかった文字列の行を置き換える場合です。
例えば、find の文字列が存在する行を、after の文字列に置き換える場合です。
$ sed '/find/c after' in.txt 1awk after 3grep 4wc
スポンサーリンク