- 締切済み
DOS 特定の文字列を含むファイルのみの抽出方法
C直下に2つのテキストファイル「A.txt」「B.txt」が存在するとします。 Aには「Start」、Bには「Second」という文字列が含まれているとします。 これらのテキストを、BATを使って『テキスト内に特定の文字列が含まれているファイル』のみをDOSプロンプト上に表示する方法をご教示願います。 ■想定するコマンド実行結果 ・Start.BATを実行→DOSプロンプトにて「A.txt」のみが表示する。 ・Second.BATを実行→DOSプロンプトにて「B.txt」のみが表示する。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- oshiete_poo_V1
- ベストアンサー率42% (15/35)
以前1Fに聞きに来ていたW1の方ですよね? Windows7でよければ次の通り: Start.BAT pushd c:\ for %%i in (A.txt B.txt) do @findstr /M "Start" %%i pause popd Second.BAT pushd c:\ for %%i in (A.txt B.txt) do @findstr /M "Second" %%i pause popd
- lupin-333333
- ベストアンサー率31% (294/933)
>DOS 特定の文 何のDOSでバージョンは? DOSと言う書き方をするなら、DOSの種類と、バージョンを記載しましょう。 MS-DOS IBM DOS Free DOS Dr DOS 等、たくさんの種類があり、それぞれバージョンによって、使い勝手が違ってきます。 (それぞれ通称です。正式名称は自分で検索してください) WindowsのWindows2000以降に搭載されているDOSをさしているなら、「コマンドプロンプト」と呼び方を変えましょう。 本文の内容は、コマンドの操作だけで十分です。 >findstr /? とすれば、ファイルの中身を大文字小文字を区別して、キーワード、単語単位で検索できる、コマンドの使い方の説明がでます。それをよく理解して、試行してください。 例えば、説明文の最後に正規表現の使い方がでます。単語単位で検索するやり方もでます。
補足
OSは7なのでコマンドプロンプトです。 findstrというコマンドは知っています。 何度か試行しましたが、想定結果のようにならないので、質問させていただいた次第です。 具体的な構文を提示していただきたいので、ご理解ください。