2009-08-24 7 views
2

디렉토리의 모든 폴더에 파일 (예 : a.jpg)을 복사하려고합니다.모든 폴더 배치 파일에 복사 하시겠습니까?

내가

copy a.jpg */a.jpg 

같은 당신이 그런 일을하는 배치 파일을해야합니까해야합니까?

for /f "tokens=*" %f in ('dir . /ad/b') do copy "a.jpg" "%f" 

하는 당신은 사용하여이 작업을 수행 할 수 있습니다

답변

5

이 명령의를 사용 (PS. 나는 창을 사용) 명령은 /r 스위치와 함께 사용되며 디렉터리 트리를 열거하는 데 사용됩니다. 예를 들어, 다음은 C를 복사합니다 : \의 a.jpg 파일을 C : \ Test 폴더 및 하위 폴더의 모든 : \ Test 폴더 및 모든 하위 폴더와 %%~ff :

for /r "C:\Test" %%f in (.) do (
    copy "C:\a.jpg" "%%~ff" > nul 
) 

for /r "C:\Test" %%f in (.) 문은 C를 열거 현재 폴더 이름을 반환합니다.

당신은/F % g의 ('DIR/AD/B/S')에 대해 다음 명령

를 사용하여 디렉토리의 모든 폴더에있는 파일을 복사 할 수 있습니다

+0

숨겨진 파일이나 시스템 파일은 어떻습니까 ?? 시도했지만 파일을 찾을 수 없다고합니다. – Strider

5

배치 파일에 배치 할 때 %% f를 대신 %를 사용하는 것을 기억

2

가 C를 복사 DO : \ myfile을 % g

설명 : 상기 명령에

- % g 변수, DIR/AD/B/S는 : - 모든 폴더와 디렉토리의 하위 폴더 /F를 볼 수있는 명령 인 - 인 명령과 함께 사용 된 스위치, 대괄호로 묶인 명령의 결과를 반복하려는 경우 (이 경우 ('dir/AD/B/S'), c : \ myfile : - 모든 하위 폴더에 복사 할 파일입니다.

관련 문제