2013-03-23 84 views
1


這裏是我的文件夾層次:

[數字]
[數字/ 12545]
[數字/ 12545的/ dev]
[數字/ 12545/PROD]
如何遍歷windows批處理文件中指定的子文件夾?

[數字/ 32445 ]
[數/ 32445的/ dev]
[數/ 32445/PROD]

...

[數字/ .....]
[數字/...../開發]
[數字/...../督促]

我要複製一些文字文件在唯一的「[Numbers /...../ dev]」文件夾下。我應該怎麼做? 我試過下面的代碼,它不工作,因爲它在所有子文件夾下的coppies。

for /r %NUMBER_DIRS% %%d in (.) do (
    copy %PROJECT_INPUTS%\*.txt "%%d" 
) 

謝謝。

回答

1

試試這個:

for /d /r "%NUMBER_DIRS%" %%d in (*DEV) do copy "%PROJECT_INPUTS%\*.txt" "%%~d\*.txt" 
+1

這個問題可能不被理解。我想將%PROJECT_INPUTS%的文件複製到[Numbers /...../ dev]子文件夾下。 – Brucevilla 2013-03-23 16:33:15

+1

我相信你已經把'COPY'倒過來了......而你還沒有解決'\ dev'目錄的要求...... – Magoo 2013-03-23 16:33:27

+0

是的,謝謝。做了一個編輯。 – Endoro 2013-03-23 16:36:15

1
@ECHO OFF 
SETLOCAL 
FOR /f "delims=" %%i IN (
    'dir /s /b /a:d "\numbers" ^| findstr /i /e "\dev"' 
) do ECHO COPY %PROJECT_INPUTS%\*.txt "%%i\" 

這將報什麼批提出做。在COPY之前刪除ECHO關鍵字以執行復制。

注意:您可能需要添加/y到複印選項,如果你想OVERWRITE在目標目錄中已經存在的文件。

我假定你複製FROM%PROJECT_INPUTS%TO許多...\dev目錄。

相關問題