Help us understand the problem. What is going on with this article?

特定の文字列を含む行を抽出してファイルに保存する

More than 3 years have passed since last update.

vimで20000行くらいあるファイルから、特定の文字列を含む行を抽出して、別ファイルに書き出したかった。
備忘録的として残しておきます。

e large_file.txt  #検索対象のファイル
let @a = ''       #バッファaを空にする
/foo              #対象となる文字列をサーチ
g//y A            #グローバルコマンドでマッチした行をヤンクしてバッファaに追記する
e output.txt      #出力先ファイル
put a             #バッファaをカレント行にPUTする
wq

hoge.vimとかで保存してsourceコマンドから叩く。

input/output/search_wordあたりを変数にしてvim Script化したいところですね。

takzo
*おことわり* このサイトの掲載内容は私自身の見解であり、必ずしも所属会社の立場、戦略、意見を代表するものではありません。 記事は執筆時点の情報を元に書いているため、必ずしも最新情報であるとはかぎりません。 記事の内容の正確性には責任を負いません。自己責任で実行してください。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away