2010-02-12 78 views
0

您好,我需要一個批處理文件來存儲變量中所有名爲「.svn」的目錄/子目錄的所有路徑,這些路徑可以在my_folder中找到。Windows批處理文件:獲取文件夾路徑並將它們存儲在變量中

喜歡的東西:

@ECHO OFF 
FOR /r my_folder %%X IN (.svn) DO (ECHO %%X) 

上述命令將它們打印到屏幕,但我需要將它們存儲在一個變量作爲字符串列表。有人知道如何去做?

這是我用來幫助自己與批處理文件的網站後,我想這樣的變量的值傳遞給此命令RD爲了與此子文件夾/文件一起刪除http://ss64.com/nt/

。 所以我們說的變量名$a我會做這樣的事情:

RD /s /q $a 
+0

我假設你在窗戶對不對? – 2010-02-12 15:25:40

+0

@DavidBrunelle是的,看第一個問題的標題。 :-) – 2014-02-25 13:29:30

回答

1

最簡單的解決沒有任何變量是發出你的FOR循環內的RD命令。您可以使用多個命令的括號內,如:

@ECHO OFF 
FOR /r my_folder %%X IN (.svn) DO (
    ECHO %%X 
    RD /s /q %%X 
) 

如果喲需要到pathes添加到一個變量,你可以那樣做:

@ECHO OFF 

SET PATH_LIST= 
SETLOCAL ENABLEDELAYEDEXPANSION 

FOR /r my_folder %%X IN (.svn) DO (
    ECHO %%X 
    SET PATH_LIST=!PATH_LIST! "%%X" 
) 

ENDLOCAL 

RD /s /q %PATH_LIST% 

但是請記住,環境變量大小有限。在Windows XP中,單個變量可以保存最大值。 8,192字節。

相關問題