2016-10-15 11 views
2

いくつかの助けを借りて、結局、入力文字列と同じ名前を持つファイルをコンピューターで検索するFORループが見つかりました。今私の唯一の問題は、forループがただ一つではなく二つのディレクトリをスキップするようにしたいということです。それも可能ですか?FORループの1つ以上の特定のフォルダをスキップする

for %%a in (C D E F G H U W) do (
    for /f "tokens=*" %%b in ('dir /s /b "%%a:\%filename%" ^|findstr /v /i /L /c:"%cd%\directory i want to skip" ') do (
    --- 
    --- 
    --- 
    ) 
) 

私はこの方法を試してみましたが、動作していないようです:

for %%a in (C D E F G H U W) do (
    for /f "tokens=*" %%b in ('dir /s /b "%%a:\%filename%" ^|findstr /v /i /L /c:"%cd%\directory i want to skip" ^|findstr /v /i /L /c:"%cd%\ another directory i want to skip" ') do (
    --- 
    --- 
    --- 
    ) 
) 

答えて

0

何同じfindstr文で二回/c:"string"の使用について:

for /f "tokens=*" %%b in ('dir /s /b "%%a:\%filename%" ^|findstr /v /i /L /c:"%cd%\directory /c:"%cd%\ another directory i want to skip" ') do (..... 
1

はい、それはあります。 findstrc:"..."句をダブルアップするか、必要なすべての除外ファイルを作成してこのファイルを/g:filenameとして使用することができます。最後の質問でお伝えしました。

関連する問題