Date Modified Tags memo / linux

sedのメモ量が増えたので独立

sedで良く使うメモ

sedはすぐ忘れる。

参考: + sed コマンド + sedコマンドで覚えておきたい使い方12個(+3個)

上書き

-iつければおk

置換(文字列削除にも使える)

$ sed 's/正規表現/置換文字列/g'

行削除

$ sed '/正規表現/d'

指定行だけ表示

文字列の編集じゃないけど、便利。

$ sed -n 行番号p
$ sed -n 開始行番号,終了行番号p

行挿入

前に挿入

$ sed 行番号i

後に挿入

$ sed 行番号a

最終行指定は$

文字列置換(sed)関連

一番最初にマッチしたものを置換

$ sed 1,/pattern/s/pattern/replace/

1は1行目からの意味。10行目から始めたければ10に変えるとか、数字はパターンにしても良い

$ sed /pattern from/,/pattern/s/pattern/replace/

一行目に文字列を追加する

$ sed -i hoge -e "1i fuga"

参考: sedにて一番最初にマッチしたモノだけを置換するには - 計算機と戯れる日々

ファイルを上書き保存

オプション -iを使う。一括でファイル上書きならこんな感じ

$ find . -name "*.html" | xargs sed -i -e s/hoge/fuga/

参考: sedでファイルを上書き保存