• ベストアンサー

バッチ処理について

指定したホルダー内にある、拡張子「TXT」の全てのファイルに対して特定の文字列が存在するかいなかを調べる為のバッチファイルの書き方を教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • syosyosyo
  • ベストアンサー率33% (32/95)
回答No.2

ファイルの中身に特定の文字列が存在するか否か、と解釈しましたが。 OSはUNIXではなく、Windowsですよね? バッチファイルでそういうことをするやり方は思いつかないのですが、grepを使えば出来ます。 Windows grep で検索すればフリーのgrepが見つかります。 秀丸エディタを使っていれば、秀丸にgrep機能がありますが。

homma
質問者

お礼

回答ありがとうございます。「grep」検索しました、おかげさまで便利なフリーソフトをダウンロードすることが出来ました。

その他の回答 (3)

  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.4

cd 指定フォルダ名 find 特定の文字列 *.txt WindowsNT 2000 XP 以外では動かないかも。 その場合は #2 さんが書かれているようなコマンドラインで動く grep が必要です。

homma
質問者

お礼

回答ありがとうございました。「find」コマンドも参考になりました。

  • SUPERS
  • ベストアンサー率42% (26/61)
回答No.3

お使いのOSがWin2000/XPならば、 下記でいかが? @echo off .... find /C *.txt "検索文字列" > output.txt exit このようにすると output.txtには、 検索文字列が含まれる行数だけがファイル化できます。 ファイル名:行数 の形式で ファイル数分が全て一覧になります。 その後、含まれるファイルだけを指定して 今度は中身を表示されたらどうでしょう? Windows98/MEなどでは、grepなどを探してきて 使われたら。

homma
質問者

お礼

回答ありがとうございました。「grep」検索で便利なフリーソフトをダウンロードする事が出来ました。

noname#8445
noname#8445
回答No.1

ファイル名の文字列なら dir /b > kekka.csv でkekka.csvをエクセルで開き検索してみては どうでしょうか

homma
質問者

お礼

回答ありがとうございました、出来ればエクセル等を使用せずに検索が出来れば考えています。