выпуск пакета xcopy - PullRequest
       26

выпуск пакета xcopy

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

Я хочу скопировать набор подпапок, где name contains элементов в списке.В списке есть набор кодов (например, ABC1, ABC2), но папки называются ABC1_revised_2018 и т. Д. Мой пакетный файл, который я собрал, находится ниже.То, что я получаю '"Usebackq tokens=^" was unexpected' ошибка.

@ECHO ON
SET FileList=C:\filelist.txt
SET Source=C:\Files
SET Destination=C:\Files-Parsed
FOR /D "USEBACKQ TOKENS=^" %%D IN ("%FileList%") DO XCOPY /E /F /D "%Source%\%%~D" "%Destination%\"
GOTO :EOF

Я пытаюсь использовать ^ для обозначения match beginning of string, но это явно не работает.Есть идеи?Я пытался с командным файлом, а также построчно в cmd.

append

Folder
     -ABC1-text-date (this is a subfolder)
     -ABC2-text-date

filelist.txt only has values like ABC1, ABC2, etc. not exact matches does this help?

1 Ответ

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

Что ж, если вы хотите проходить по каталогам и копировать подкаталоги в соответствии с частичными совпадениями внутри файла:

@echo off
set "FileList=C:\filelist.txt"
set "Source=C:\Files"
set "Destination=C:\Files-Parsed"
for /f "delims=" %%a in (%filelist%) do (
  pushd %source%
  for /f "delims=" %%i in ('dir /s /b /ad "%%a*"') do xcopy /E /F /D "%%~fi" "%Destination%"
  popd
)

после получения записи в файле, for /d сделает список каталогов изкаталог * в исходном каталоге и физически скопируйте каталог как C:\source\*\ABC2018 и т. д.

...