2013-03-16 6 views
1

是否可以定義一個目錄列表例如「DIR1」, 「DIR2」,然後爲每個目錄的執行幾個動作,例如:對於多線體的迴路

  • xcopy C:\test\*.dll D:\%%le_dir%%\dll /Y

  • xcopy C:\test\*.exe D:\%%le_dir%%\exe /Y

  • 其中le_dir是一個目錄從定義清單

回答

3

試試這個(清單在一個文本文件):

for /f "delims=" %%i in (list.txt) do (
xcopy "C:\test\*.exe" "D:\%%i\exe" /Y 
xcopy "C:\test\*.dll" "D:\%%i\dll" /Y 
) 

把目標文件夾中的文本文件list.txt

dir1 
dir2 
... 

EDIT1(文件夾中的腳本中定義):

set "folders=dir1 dir2 dir3" 
for %%i in (%folders%) do (
xcopy "C:\test\*.exe" "D:\%%i\exe" /Y 
xcopy "C:\test\*.dll" "D:\%%i\dll" /Y 
) 

EDIT2(如果有是文件夾名稱中的空格):

set "folders="dir 1" "dir 2" "dir 3"" 
for %%i in (%folders%) do (
xcopy "C:\test\*.exe" "D:\%%~i\exe" /Y 
xcopy "C:\test\*.dll" "D:\%%~i\dll" /Y 
) 

Edit3:「)」添加。

+0

什麼是list.txt?腳本數組可以在腳本中定義嗎? – Xlaudius 2013-03-16 16:27:40

+0

目標文件夾在單獨的文本文件'list.txt'中定義。 – Endoro 2013-03-16 16:34:25

+0

好的。這是非常好的,但是你能指定一種方法來讓這些目錄內聯,比如'set DIRS = ...'; – Xlaudius 2013-03-16 16:35:51