JPG
확장자가 있는 다양한 하위 디렉터리의 모든 파일 C:
을 D:
. 디렉토리 구조를 보존하고 싶지 않습니다.
내가 얻은 것은 다음과 같습니다.
for /r C:\ %f in (*.jpg) do @copy "%f" D:\pictures
이 시점 이후에는 덮어쓸 것인지 묻는 메시지가 나타납니다 D:\pictures
. 라고 대답하면 yes
단일 파일이 되고, 아니오라고 대답하면 파일이 복사되지 않습니다.
/y
명령 끝에 추가도 시도했지만 이전 파일을 덮어쓰고 마지막 파일만 남깁니다.
답변1
이것은 작동합니다:
for /r C:\ %f in (*.jpg) do @copy "%f" D:\pictures\
설명:
이 명령은 copy "%f" D:\pictures
파일을 디렉터리의 파일 %f
위치에 복사합니다 .D:\pictures
pictures
D:\
디렉터리로 취급 \
되도록 후행을 추가합니다 .copy
pictures
여러 파일을 단일 위치(예: copy *.* D:\backup
)에 복사하면 은(는) copy
자동으로 backup
하나의 디렉터리로 처리됩니다. 그러나 단일 파일을 복사하는 경우에는 그렇지 않습니다.
답변2
/R c:\ %%1 in ("*.txt") do @xcopy "%%1" d:\txttemp%%~p1 /e/i/s/q/h
이 코드는 덮어쓰기 없이 복사되며 폴더와 하위 폴더를 생성합니다.