다음과 같은 디렉토리 구조가 있습니다.
folder1\
help.txt
folder2\
help.txt
folder3\
help.txt
...
robocopy 사용하여 folder1의 내용을 복사하고 싶습니다 . 예를 들면 다음과 같습니다.
robocopy folder1 destination /E
folder1에있는 help.text 파일 을 제외 하고 싶지만 folder2, folder3 등에 help.txt 파일을 포함 시킵니다. 디렉토리 구조의 다른 곳에 help.txt라는 파일이있을 수 있으므로 열심히하고 싶지 않습니다. 포함 할 파일의 경로를 코딩하십시오.
다음 명령을 사용하여 이름이 help.txt 인 모든 파일을 제외 할 수 있지만 folder1의 루트에서 help.txt 파일을 제외시키는 방법이 있습니까?
robocopy folder1 destination /E /XF help.txt
답변
제외 할 파일 의 전체 경로 (드라이브 포함)를 포함 해야합니다 . 상대 경로는 작동하지 않습니다.
이것은 작동합니다 :
robocopy folder1 destination /E /XF "c:\somedir\another dir\folder1\help.txt"
이것은하지 않습니다 :
robocopy folder1 destination /E /XF "folder1\help.txt"
이것도 아닙니다 :
robocopy folder1 destination /E /XF ".\folder1\help.txt"
답변
나는 파일 이름으로 그렇게 할 수있는 방법이 없다는 것을 알지 못합니다. 복사하고 싶지 않은 파일에 소스 트리의 다른 파일에없는 것을 “알고”있는 속성을 설정 한 다음 / xa를 사용하여 해당 속성을 가진 파일을 제외 할 수 있습니다.
하지만 실패하면 다른 도구를 사용해야합니다.
이것은 작동합니다 :
echo folder1\help.txt > \temp\excl.txt
xcopy /E folder1 destination /EXCLUDE:\temp\excl.txt
실제로 다음과 같은 디렉토리 구조가있는 경우 :
folder1\
help.txt
folder1\
help.txt
아마도 그 두 파일을 모두 제외했을 것입니다.
답변
% CD %를 사용하여 현재 디렉토리를 제공 할 수 있습니다. 특정 디렉토리를 제외시키는 데 도움이됩니다. 더 많은 도움이 여기 있습니다 :