バッチファイル:特定のフォルダのファイルシステムを検索し、ヒットするたびにコマンドを実行します


0

私はバッチファイルに慣れていないし、いくつかの助けが必要です。私は以下のことをやりたいです。

ファイルシステム内で "Recordings"フォルダを探し、その結果をテキストファイル(results.txt)に書き込むバッチファイルを作成しました。 その後、結果内の文字列 "Directory"を探しています。 それから、findstrのすべての行(すべてのパス)を、使用しているツールの実行コマンドとマージします。

バッチファイル.bat:

@echo off
dir /S Recordings > C:\testing\results.txt
findstr Directory C:\testing\results.txt
PAUSE

出力は次のようになります。

C:\testing>batchfile.bat
 Directory of C:\testing\Scenarios\Default
 Directory of C:\testing\Scenarios\test1
Press any key to continue . . .

それでは、この出力のすべての行を私のexecution-commandとマージしたいと思います。

tool.exe -parameter C:\testing\Scenarios\Default\Recordings
tool.exe -parameter C:\testing\Scenarios\test1\Recordings

回答:


1

この出力のすべての行を私のexecution-commandとマージしたい

次のバッチファイルを使用してください。

@echo off
setlocal
for /f "usebackq" %%i in (`dir /a:d /b /s ^| findstr "Recordings"`) do (
  tool.exe -parameter %%i
  )
endlocal

参考文献


@ジミいいね。もっと手助けが必要ですか。これがあなたの質問に答えたならば、忘れないでください 答えを受け入れる 同意ボタン(✓の✓ボタン)をクリックしてください。
DavidPostill
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.