.bat для копирования с нефиксированного пути - PullRequest
0 голосов
/ 31 января 2019

Я пытаюсь скопировать из папки «N: \ 8 \ Installation Release \ Current 8.18.310 \ Web» в мой локальный «D: \ Abc».Подвох заключается в том, что название «Current 8.18.310» будет постоянно меняться, например, на «Current 8.18.410».До сих пор я придумал ниже, и это не похоже на работу, он копирует 1-2 файла / папки, но он просто останавливается там.Пожалуйста, сообщите !!

For /f "delims=" %%i in ('dir /S /B /AD "N:\8\Installation Release" ^| findstr /i "current" ^| findstr /i "web"') do (
xcopy "%%i"* /D /C /Q /R /Y /I /S "D:\Abc" & goto :eof
)

Ответы [ 2 ]

0 голосов
/ 31 января 2019

Я бы использовал for /D loop здесь для разрешения изменяющегося каталога, например:

for /D %%D in ("N:\8\Installation Release\Current *") do (
    xcopy /D /C /Q /R /Y /I /S "%%~D\Web\*.*" "D:\Abc"
)
0 голосов
/ 31 января 2019

Может быть, что-то вроде этого?

@echo off
for /f "delims=" %i in ('dir /B /AD "N:\8\Installation Release" ^|findstr /i current') do (
  xcopy "%%i\web\*" /D /C /Q /R /Y /I /S "D:\Abc"
)

Мы действительно проверяем только папку, содержащую current, затем назначаем ее токену %%i, затем копируем из базовой папки web.

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