激凹みから立ち直る方法

C直下に2つのテキストファイル「A.txt」「B.txt」が存在するとします。
Aには「Start」、Bには「Second」という文字列が含まれているとします。
これらのテキストを、BATを使って『テキスト内に特定の文字列が含まれているファイル』のみをDOSプロンプト上に表示する方法をご教示願います。

■想定するコマンド実行結果

・Start.BATを実行→DOSプロンプトにて「A.txt」のみが表示する。
・Second.BATを実行→DOSプロンプトにて「B.txt」のみが表示する。

よろしくお願いします。

A 回答 (2件)

以前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
    • good
    • 0

>DOS 特定の文



何のDOSでバージョンは? DOSと言う書き方をするなら、DOSの種類と、バージョンを記載しましょう。
MS-DOS
IBM DOS
Free DOS
Dr DOS
等、たくさんの種類があり、それぞれバージョンによって、使い勝手が違ってきます。
(それぞれ通称です。正式名称は自分で検索してください)


WindowsのWindows2000以降に搭載されているDOSをさしているなら、「コマンドプロンプト」と呼び方を変えましょう。


本文の内容は、コマンドの操作だけで十分です。

>findstr /?

とすれば、ファイルの中身を大文字小文字を区別して、キーワード、単語単位で検索できる、コマンドの使い方の説明がでます。それをよく理解して、試行してください。

例えば、説明文の最後に正規表現の使い方がでます。単語単位で検索するやり方もでます。

この回答への補足

OSは7なのでコマンドプロンプトです。
findstrというコマンドは知っています。
何度か試行しましたが、想定結果のようにならないので、質問させていただいた次第です。
具体的な構文を提示していただきたいので、ご理解ください。

補足日時:2014/04/10 09:21
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!