Panchu.
В CMD вы должны использовать команду RD
(RMDIR
), чтобы полностью удалить папку и все файлы под ней.
Однако вам все равно придется удалитьсами файлы, находящиеся в G: \ Drive, так как вы не можете удалить папку там.
Это должно сделать необходимое:
@(SETLOCAL
ECHO OFF
SET "_Path=G:\"
)
REM Delete all Subdirectories and their File Contents
FOR /F "delims=:" %%_ IN ('
dir /B /A:D "%_Path%*" ') do (
RD /S /Q "%_Path%%%_\")
REM Delete all files in Root Folder:
DEL /F /Q "%_Path%*" & DEL /F /Q /A:H "%_Path%*"
Как отметил Mofi, скрытые каталоги не отображаютсяпо умолчанию, поэтому мне пришлось либо запустить два цикла, либо использовать цикл For, так как он поднял вопрос о каталогах с начальным или конечным интервалом, я изменил вместо этого DIR и проанализировал его с циклом FOR / F вместо FOR /D
Однако, если у вас нет этих требований, это все пух.
Примечание для удаления файлов с конечными пробелами DEL выполняет свою работу.
Пример попыткиУдалить скрытые / системные / только для чтения каталоги - они работают (конечно, если вы находитесь в командной строке с повышенными правами)
C:\Admin>MD D:\Hidden
C:\Admin>MD D:\System
C:\Admin>MD D:\ReadOnly
C:\Admin>Attrib +H D:\Hidden
C:\Admin>Attrib +S D:\System
C:\Admin>Attrib +R D:\ReadOnly
C:\Admin>for /D %A IN (D:\*) DO @(ECHO.%A)
D:\DCIM
D:\temp
D:\srtFtpLogs
D:\srtFtpData
D:\Bkp
D:\System
D:\ReadOnly
C:\Admin>attrib D:\Hidden
H D:\Hidden
C:\Admin>attrib D:\System
S D:\System
C:\Admin>attrib D:\ReadOnly
R D:\ReadOnly
C:\Admin>RD /S /Q D:\ReadOnly
C:\Admin>RD /S /Q D:\System
C:\Admin>RD /S /Q D:\Hidden
C:\Admin>attrib D:\ReadOnly
File not found - D:\ReadOnly
C:\Admin>attrib D:\System
File not found - D:\System
C:\Admin>attrib D:\ReadOnly
File not found - D:\ReadOnly