2013-03-25 1 views
4

Robocopy를 활용하여 빈 최상위 디렉토리에 대해 호출되는 경우 복사하지 못하도록 할 수 있습니까?Robocopy가 빈 최상위 디렉토리에 대응하는 것을 방지하려면 어떻게해야합니까?

Robocopy를 사용하여 스크립트 내에서 압축 된 파일 및 디렉토리를 식별합니다. 표준 Windows 보관 기능을 사용하여 빈 디렉토리를 압축 할 수 없습니다.

빈 서브 디렉토리가 복사되지 않도록하는/s 스위치에 대해 알고 있습니다.

+2

'최상위 디렉토리 '란 무엇을 의미합니까? 예를 들어 줄 수 있습니까? – Endoro

답변

4

스위치 /e 스위치없이 robocopy /s 명령을 사용하면 빈 폴더가 복사되지 않습니다. 빈 최상위 폴더에 문제가 있으므로 robocopy /s /e을 사용하고있는 것으로 보입니다. 빈 하위 폴더를 원하지 않으면 /e 스위치를 생략하면 대상에 빈 폴더가 생성되지 않습니다. 비어있는 하위 폴더를 복사해야하는 경우 빈 최상위 폴더를 복사하는 것을 피할 수 없습니다. 대상 드라이브 & 폴더에

robocopy C:\Source\Dir X:\Dest\Dir /s /e 
cd /d X:\Dest\Dir 
for /d %%i in (*.*) do rd "%%i" > nul 2>&1 

cd 명령을 변경 한 후 for 명령은 모든 최상위 폴더를 제거하려고 그러나, 당신은 쉽게 다음과 같이 빈 최상위 폴더를 제거 할 수 있습니다. 비어있는 항목 만 제거됩니다. 비어 있지 않은 폴더는 무시할 수있는 오류 메시지를 표시하므로 > nul 2>&1은 출력과 오류를 숨 깁니다.

1

Robocopy/S만이 속임수를 쓰겠지만 명령을 실행하면 완료되기 전에 대상 폴더를 살펴보면 일부 빈 폴더가 표시 될 수 있지만 일단 프로세스가 완료되면 사라질 것임을 알았습니다.