2017-03-05 4 views
0

나는이 같은 폴더 구조에서 이미지 파일의 많은 : 지금파일 복사

/Foldername1 (hohe Auflösung)/PictureRANDOMNAME1-FB.jpg 
/Foldername1 (hohe Auflösung)/PictureRANDOMNAME2-FB.jpg 
[...] 
/Foldername2 (hohe Auflösung)/PictureRANDOMNAME1-SW.jpg 
/Foldername2 (hohe Auflösung)/PictureRANDOMNAME2-SW.jpg 
[...] 
/Foldername3 (hohe Auflösung)/PictureRANDOMNAME1-SP.jpg 
/Foldername3 (hohe Auflösung)/PictureRANDOMNAME2-SP.jpg 
[...] 

내가 이와 같이, 이러한 이미지 파일의 일부 목록이있는 Filelist.txt의 있습니다

PictureRANDOMNAME1, PictureRANDOMNAME3, [...] 

내가 모든 하위 폴더에서 텍스트 파일 목록에서 문자열 (들)과 일치하는 모든 이미지를 복사 할 것 새로운 폴더 구조를 유지하면서 대상을 이동하지 않습니다.

아마 나는 모든 하위 폴더가있는 기본 폴더에 filelist.txt와 함께 복사 한 배치 파일이 필요하며 실행하고 다른 폴더의 원하는 파일 만 사용하여 동일한 폴더 구조를 얻습니다.

이것은 경로와 움라우트의 공백 일 수 있습니다.

죄송합니다. 솔직히 최선을 다했습니다. 어쩌면 일부 원어민 강사가 편집을 이해하는 데 도움이 될 수도 있습니다.

+0

https://stackoverflow.com은 무료 스크립트/코드 작성 서비스가 아닙니다. 지금까지 시도한 내용 (이미 사용하고있는 스크립트/코드 포함)과 문제가있는 부분을 알려 주시면 특정 문제를 해결하기 위해 노력할 수 있습니다. [좋은 질문을하는 법은 무엇입니까?] (https://stackoverflow.com/help/how-to-ask)도 읽어야합니다. – DavidPostill

답변

0
@echo off 
setlocal 
:: This copies the tree structure from sourcedir to destdir 
xcopy /t /e sourcedir destdir 
:: This reads the filenames and copies the required files 
for /f "delims=" %%a in (filelist.txt) do (
for %%b in (%%a) do xcopy /s /e sourcedir\%%b* destdir 
) 

%%a은 파일에서 해당 줄을 가져옵니다. 각 줄은 쉼표로 구분되므로 %%b은 줄의 각 이름에 xcopy을 실행합니다.

>nul 줄을 xcopy 줄 끝에 추가하여 원하는 경우보고하지 않을 수 있습니다.

/은 winbatch - \의 스위치가 디렉토리 구분 기호임을 나타냅니다.

이 절차는 테스트되지 않았습니다. 라이브 데이터에 의존하기 전에 그것을 확인하기 위해 작은 더미 하위 트리에 대해 시도해 보시기 바랍니다.