所以我有一個主目錄的子目錄中的複雜內文件排序驗證碼:在整個目錄上執行操作時是否可以跳過子目錄?
@ECHO OFF
SETLOCAL
SET relroot=g:\Pictures\Uda 18
(SET relroot=g:\Pictures\Uda 18)
SET "relroot=g:\Pictures\Uda 18"
SET "destdir=g:\Pictures\Uda 18\Sets"
:again
(SET artist=)
SET /p artist="Artist? "
IF NOT DEFINED artist GOTO :eof
MD "%destdir%\%artist%" 2>nul
FOR /f "delims=" %%i IN (
' dir /s /b /a-d "%relroot%\*%artist%*" '
) DO (
>>undo.txt ECHO %%i^|%destdir%\%artist%\%%~nxi
MOVE "%%i" "%destdir%\%artist%\%%~nxi" >nul)
)
GOTO again
它需要一個輸入,查找其中的目錄「宇田18」和一切,移動與所有文件將其名稱輸入到以「Uda 18/Sets」目錄下的輸入命名的文件夾中。然而,不小心的測試讓我從'Uda 18/Sets'中繪製文件,這些文件的名字意味着它們不能用批處理來重新組織。爲了避免這種情況,我需要從文件的取出位置中排除「Uda 18/Sets」,但我找不到方法。正如標題所要求的那樣;有可能跳過一個select子目錄,如果是這樣,怎麼辦?
這沒有奏效;該文件夾已創建,但沒有文件被觸摸,然後窗口自行關閉。 – Ultra 2013-04-28 12:27:27
這不會創建任何文件夾。它顯示「uda 18」子文件夾中的所有文件,「集合」中的文件除外。 – Endoro 2013-04-28 12:52:50
不是這一部分,而是在批處理的其餘部分中,通常會製作的文件夾已生成但文件未處理。 – Ultra 2013-04-28 13:07:12