アプリ版:「スタンプのみでお礼する」機能のリリースについて

タイトルは不完全なのですが、
1.作成したバッチファイルに調べたいテキストファイルを複数ドロップ読み込み
2.ファイルに指定した文字列が含まれない場合そのファイル名を表示する
3.テキストファイルとして出力する。

と言うような動作を行いたいと思っています。一番の問題点が2番です。

ドロップし文字列検索からファイル名表示なら以下で良いと思うのですが、
   findstr /M /C:"スペース含む指定文字列" %1
オプション/Mは一致する時に出力なので、含まれない場合は出来ません。

ifコマンドも試して見ましたが理解が出来てない為かどうもよく判りません。
どなたか教えていただけると助かります。

尚、作成目的としては大量にあるログからの問題箇所の発見です。
1つの検査するファイルに付き1つのエラーチェックログが作成されます。
例えばログファイルに"D 0000"の様に全て0であれば問題無いのですが、
"D 0538"の様に0でなくなると異常が出ている事になります。

しかし、大量のテキストファイルを見ていくのは手間ですから、
どこのログファイルが問題か自動的に探して欲しいのです。

A 回答 (1件)

FINDSTR を実行した後で ERRORLEVEL によって出力する/出力しないを判定すればいいと思います。



@echo off
:LOOP
if "%1" == "" goto END
findstr /C:"D 0000" "%1">nul
if errorlevel 1 echo %1
shift
goto LOOP
:END
pause
    • good
    • 0
この回答へのお礼

errorlevelを使うのですか!意味はまだ調べてないですけど、
特に問題なく行いたい動作が出来ました。
ありがとうございます。

お礼日時:2012/02/09 00:50

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