TRYZM
← 記事一覧

コマンドプロンプト

テキストファイルから特定の文字列を含む行の取り出し【コマンドプロンプト】

公開 2021-01-14更新 2026-08-04

ログやリストから「この文字列を含む行だけほしい」というとき、Windowsなら findstr が一番手軽です。

findstr (オプション) [探したい文字列] [探すテキストファイル]

リダイレクトして書き出して使っています

画面に出すだけだと結局コピペが面倒なので、自分はファイルに書き出して使っています。

findstr (オプション) [探したい文字列] [探すテキストファイル] > [出力するファイル名]

>(リダイレクト)と出力ファイル名(list.txt など)を足すだけです。既存の list.txt追記したいなら、>>> にすればOKです。

使用例

  • 探したい文字列:hoge
  • 探すテキストファイル:TEST.txt
  • 出力するファイル名:TEST_hoge.txt

この場合、下記でOKです。

findstr "hoge" TEST.txt > TEST_hoge.txt

文字列はダブルクォーテーションで囲んでおくと、スペースを含む場合もそのまま動きます。

覚えておくと便利なオプション

オプション意味
/i大文字・小文字を区別しない
/v指定した文字列を含まない行を取り出す
/n行番号を付ける
/sサブフォルダ内のファイルも検索する
/c:"文字列"スペースを含む文字列をひとかたまりとして検索する

引数にスペース区切りで複数の語を書くと、findstr は「どれかを含む行(OR検索)」として扱います。フレーズとしてそのまま探したいときは /c: を使ってください。 ここは挙動を勘違いしやすいところです。

findstr /i /c:"error code" TEST.txt > TEST_error.txt

あわせて読みたい

手作業を減らす話の、いまの続き

コマンドで作業を削るのと同じ発想で、いまはAIに任せられる範囲が広がっています。 どこから手をつけるかは人によって違うので、3分の診断とAI活用の実践記事を置いています。

ナオTRYZM管理人

AIに関わるPMで、夜はAIで作って試す人。囲碁では布石が好き(何もない盤面に構想を描く時間)。 嘘をつくと自分があとで気にして引きずるタチなので、報酬が入らないプランでも一番ならそのまま書きます。 守れるルールは3つ — 盛らない。順位を売らない。試せないことも、徹底的に調べて正確に。