vi (vim) で文字列置換を行う方法

2016年1月25日

Tips コマンド テクノロジー

vimを使って開発を行う場合に文字列検索は必須ですが、たまに一括置換などの処理を行いたい場合があります。 コーディング以外でも、サーバー管理をする際に、大量のバッチファイルをshファイルに書きためて処理する際など、 年次を切り替える場合に一括置換を行いたい場合があります。 以下の様な行数の多いデータファイルやバッチファイルに対して有効です。 tar zcvf 20150101.tar.gz /home/hoge/20150101/*.log --remove-files tar zcvf 20150102.tar.gz /home/hoge/20150102/*.log --remove-files tar zcvf 20150103.tar.gz /home/hoge/20150103/*.log --remove-files ...(*1年分)

構文

:%s/検索文字/置換文字/g オプション c:置換チェック(対話形式で置換できる)

サンプル

## 標準 :%s/hoge/fuga/g ## 区切り文字は変更できる :%s;hoge;huga;g ## 10行目〜20行目の置換を行う :10,20s/aaa/bbb/g

参考リンク

下記ページにも詳しく書かれています http://www.ksknet.net/vi/post_42.html

人気の投稿

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。

ブログ アーカイブ