与えられた文字列の置換えをしてくれるコマンドです。ちなみに、sed は Stream EDitor の略とのことだそうです。
🚕 利用例
置換対象の文字列を表示
sed -n 's/AAA/BBB/p' ファイル名
|
置換対象で大文字・小文字を無視
文字列の置き換え
-e スクリプトは複数書けます。
下は、すべての AAA => BBB, CCC => DDD に置換えた結果を出力する場合です。
sed -e 's/AAA/BBB/g' -e 's/CCC/DDD/g' ファイル名
|
置換えた結果でファイルを上書き
-i でファイルの上書きを行います。
sed -i -e 's/AAA/BBB/g' ファイル名
|
行の削除
d を条件の最後につけると削除になります。
sed -e '1d' file sed -e '1,4d' file
|
80文字ずつ改行する
sed 's/.\{80\}/&\n/g' ファイル名
|
🏈 よく利用するオプション
| オプション |
意味 |
| -eスクリプト |
指定したスクリプトで変換を行い、結果を出力 |
| -pスクリプト |
指定したスクリプトで変換された行だけを出力 |
🐯 応用例
特定の文字列が含まれる行番号を返す
ある特定の文字列が含まれる行番号を返すコマンド。grep との組み合わせです。
grep -e AAA -n querylog.txt | sed -e 's/:.*//g'
|
ファイルの先頭の空行を除去
ファイルの先頭の空の行の削除するのは次のコマンドです。
find . -type f -name '*.rb' -print0 | xargs -0 -n 1 sed -i '' '/./,$!d'
|
🎉 参考リンク
🖥 VULTRおすすめ
「VULTR」はVPSサーバのサービスです。日本にリージョンがあり、最安は512MBで2.5ドル/月($0.004/時間)で借りることができます。4GBメモリでも月20ドルです。
最近はVULTRのヘビーユーザーになので、「ここ」から会員登録してもらえるとサービス開発が捗ります!