2013-07-05 85 views
0

我想包括使用嵌套的DO語句FOR循環的每個迭代的多個操作。本質上,其目的是將下面兩行合併成一行。MS-DOS/Windows批處理FOR循環中嵌套的DO

FOR /F "delims=" %%a IN (ArchiveList.txt) DO IF NOT EXIST "%destfolder%\%%~nxa" ECHO "%%~nxa does not exist" 
FOR /F "delims=" %%a IN (ArchiveList.txt) DO IF NOT EXIST "%destfolder%\%%~nxa" set /a i = i + 1 

我試着用括號,如下所示...

FOR /F "delims=" %%a IN (ArchiveList.txt) DO (IF NOT EXIST "%destfolder%\%%~nxa" DO(ECHO "%%~nxa does not exist" & set /a i = i + 1)) 

...但這會導致下面的錯誤出現,每一次迭代:

'做' 是不被識別爲內部或外部命令,可操作 程序或批處理文件。

感謝任何幫助,您可以提供:)

回答

1

的語法ifIf boolean-condition something

由於「東西」你有DO(.....它不被識別爲一個可執行命令。

刪除DO(和最後的右括號。

+0

謝謝彼得,那個伎倆:) – skyfx