Поиск файла в подпапках - PullRequest
       1

Поиск файла в подпапках

0 голосов
/ 31 августа 2018

Когда я пытаюсь найти zip-файл в подпапках «Input_Files», команда не запускается после «\ 172.24.191.117 \ data1 \ NEW-ENDORSEMENTS \ Backlog_checked \% J% \ CLIENT-SUPPLIED \ Backlog" , Я думаю, что пространство - это проблема, чтобы найти путь. Пожалуйста, проверьте и очистите.

@echo off
echo.
set /p J=Enter Journal ID : 
set /p A=Enter Article ID : 
set "BaseDir=\\172.24.191.117\data1\NEW-ENDORSEMENTS\Backlog_checked\%J%\CLIENT-SUPPLIED\Backlog Transfer\Non EV articles\%J%%A%"
For /f "delims=" %%A in ('
  Dir /B/S/A-D "%BaseDir%\*.zip" ^| Findstr /I "\\Input_Files\\[^\\]*\.zip$"
') Do start %%A
pause

1 Ответ

0 голосов
/ 31 августа 2018

Заменить start %%A на start "" "%%A".

DIR выводит найденный файл, соответствующий шаблону, с полным именем файла (путь к файлу + имя файла + расширение файла), никогда не заключенный в двойные кавычки. Поэтому необходимо ссылаться на файл, вставляя его в двойные кавычки, как это сделано здесь с "%%A".

Первая строка в двойных кавычках интерпретируется командой START как необязательный заголовок. По этой причине заголовок должен быть явно указан, чтобы не интерпретировать полное имя файла в " как строку заголовка. Поскольку запущенное приложение для открытия файла * .zip, скорее всего, является приложением с графическим интерфейсом, пустая строка заголовка может использоваться с "", поскольку в этом случае не открывается ни один командный процесс с консольным окном.

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