|было неожиданно в это время - PullRequest
0 голосов
/ 01 февраля 2019

Я пытаюсь найти файл, используя dir и findstr, чтобы иметь возможность указать расширение и шаблон в имени.

Для этого я использую следующую команду:

for /f %%a in ('dir /b /s *.pm  | findstr /i "MyPattern"') do (set "name=%%a")

На этот вопрос в основном ответили здесь , здесь и здесь .

Но ни один из них не относится кмой случай.

1 Ответ

0 голосов
/ 01 февраля 2019

Вам нужно выйти из канала (|), потому что разрывает цикл for только потому, что он всегда выполняется с более высоким prio.Измените ваш код следующим образом:

for /f %%a in ('dir /b /s *.pm  ^| findstr /i "MyPattern"') do (set "name=%%a")

и он должен работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...