У меня есть каталог, который выглядит так:
\isa\documents\2004\2008\jac\file1.txt
\isa\documents\2004\jan\file1.txt
\isa\scannedDocs\2004\2009\jan\file2.pdf
\isa\documents\2005\2008\jac\file1.txt
\isa\documents\2003\jan\file1.txt
\isa\scannedDocs\2002\2009\jan\file2.pdf
У меня есть список файлов, которые мне нужно скопировать (экспортировать из базы данных), но поскольку мне не нужен КАЖДЫЙ файл в каталоге, мне нужны только те, которые скопированы из моего списка:
Файлы-необходимы.txt:
\isa\documents\2004\2008\jac\file1.txt
\isa\documents\2004\jan\file1.txt
\isa\documents\2004\jac\file3.txt
\isa\documents\2003\jan\file1.txt
В принципе:
- Мне нужно будет скопировать нужные файлы, и
- Журнал, когда файл не может быть найден, и,
- Мне нужно сохранить структуру папок, так как файлы могут иметь одно и то же имя, просто в разных каталогах.
Это на машине с Windows 7, и я могу запускать PowerShell и пакетные файлы. Я попробовал robocopy и xcopy и либо получил все каталоги и не файлы, либо все файлы и не каталоги...
Любая помощь будет здорово.
РЕДАКТИРОВАНИЕ:
Итак, я попробовал Robocopy, но он либо копирует каталоги, а не файлы, либо файлы и каталоги. Я еще ничего не пробовал в powershell, но может быть так...
Это Windows, возможно, я просто неправильно написал косые черты выше, я работаю между обеими средами и просто пытался объяснить проблему.
Что я пробовал:
@echo off
set src_folder="C:\batchScripting\TEST_DIR\"
set dst_folder="C:\batchScripting\COPY2_DIR\"
robocopy "C:\batchScripting\TEST_DIR" "C:\batchScripting\COPY2_DIR" FileList.txt /S /V /NP /LOG:"log.log" /R:10 /W:30
а также
@echo off
set src_folder=C:\batchScripting\TEST_DIR\
set dst_folder=C:\batchScripting\COPY2_DIR\
for /f "tokens=*" %%i in (File-list.txt) DO xcopy /s /i "%src_folder%\%%i" "%dst_folder%"
files-needed.txt
? Проверка наличия или отсутствия файла? Реальное копирование? Что-то совсем другое? - person vonPryz   schedule 22.04.2014directory
использует косую черту, то это не Windows/Batch. Вы хотели использовать обратную косую черту? Действительно ли список из базы данных использует косую черту? Я могу придумать пару способов сделать это. Предоставление кода для ваших неудачных попыток было бы очень полезно. - person James L.   schedule 23.04.2014