中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-05 16:01
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 删除文件夹下面的所有东西? 查看 2,023 回复 17
楼 主 删除文件夹下面的所有东西? 发表于 2007-08-22 11:20 ·  中国 江苏 南京 电信
初级用户
★★
积分 150
发帖 63
注册 2007-05-09 16:54
19年会员
UID 87973
性别 男
状态 离线
请问高手DOS下有什么命令可以删除文件夹下面的所有东西?包括子文件夹,有的系统垃圾清理程序只能删除里面的文件,但是保留了好多空文件夹,有的却可以一起删除,不知道是什么命令做到的,谢谢。
2 发表于 2007-08-22 12:48 ·  中国 安徽 马鞍山 电信
金牌会员
★★★★
积分 3,946
发帖 1,884
注册 2006-01-20 13:00
20年会员
UID 49283
性别 男
状态 离线
是dos下还是cmd下?
Windows 一键还原
http://www.yjhy.com
3 发表于 2007-08-22 22:00 ·  中国 四川 南充 电信
超级版主
★★★★
我爱DOS
积分 5,310
发帖 2,044
注册 2005-09-26 12:00
20年会员
UID 42843
性别 男
来自 四川南充
状态 离线
4 删除文件夹下面的所有东西? 发表于 2007-08-22 22:14 ·  中国 台湾 远传电信
新手上路
积分 12
发帖 5
注册 2007-08-22 21:46
18年会员
UID 95640
性别 男
来自 台灣
状态 离线
DOS下用deltree
5 发表于 2007-08-23 09:33 ·  中国 江苏 南京 电信
初级用户
★★
积分 150
发帖 63
注册 2007-05-09 16:54
19年会员
UID 87973
性别 男
状态 离线
谢谢楼上的。
但是rd/s会把根目录本身也删除的吧?我是想删除里面的子目录和所有文件。
6 发表于 2007-08-23 09:56 ·  中国 天津 电信
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
那就用rd 配合delete使用
7 发表于 2007-08-23 10:20 ·  中国 江苏 南京 电信
初级用户
★★
积分 150
发帖 63
注册 2007-05-09 16:54
19年会员
UID 87973
性别 男
状态 离线
怎么个配合呢?
8 发表于 2007-08-23 10:46 ·  中国 天津 电信
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
for /d %%i in (d:\test\*) do @rd /s /q "%%i"
del /q d:\test\*.*

假设目录为d:\test
9 发表于 2007-08-23 13:25 ·  中国 湖南 衡阳 电信
中级用户
★★
积分 322
发帖 144
注册 2007-01-10 13:00
19年会员
UID 76062
性别 男
状态 离线
del /s *.*
rd /s *
10 发表于 2007-08-23 14:57 ·  中国 江苏 南京 电信
初级用户
★★
积分 150
发帖 63
注册 2007-05-09 16:54
19年会员
UID 87973
性别 男
状态 离线
谢谢8楼,我试成功了。
9楼的方法好些行不通。
11 发表于 2007-08-23 16:20 ·  中国 河北 保定 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
23年会员
UID 1565
性别 男
来自 河北保定
状态 离线
DeltreeX.cmd

@echo off
set All=0
if not '%1' == '' goto _loop
echo.
echo Purging current directory ...
echo Are you sure you want to purge current directory?
choice.exe /C YNQ /M "Press Y for Yes, N for No, Q for Quit."
if errorlevel 2 goto _quit
for /D %%D in (*.*) do @rd /s /q "%%D"
del /f /q .
echo.
echo Purge current directory done!
dir
goto _quit

:_loop
if '%1'=='' goto _quit
if not "%All%"=="0" goto _go
echo.
echo Purging directory %1 ...
echo Are you sure you want to purge directory: %1?
choice.exe /C YNAQ /M "Press Y for Yes, N for No, A for All directory, Q for Quit."
if errorlevel 4 goto _quit
if errorlevel 3 goto _all
if errorlevel 2 goto _next
if errorlevel 1 goto _go

:_all
set All=1
goto _go

:_go
for /D %%D in (%1\*.*) do rd /s /q "%%D"
del /f /q %1\.
echo.
echo Purge directory %1 done!
dir %1
goto _next

:_next
shift
goto _loop

:_quit
set All=
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
12 发表于 2007-08-23 21:53 ·  中国 江苏 南京 电信
初级用户
★★
积分 150
发帖 63
注册 2007-05-09 16:54
19年会员
UID 87973
性别 男
状态 离线
11楼的太复杂了,看不懂。
奇怪为什么我清楚98里面的可以成功,xp里面的却说系统找不到文件,请看下下面我在网上下载的批处理改编的:
@echo off
echo 正在清除系统垃圾文件,请稍等......
del /f /s /q %systemdrive%\*.tmp
del /f /s /q %systemdrive%\*._mp
del /f /s /q %systemdrive%\*.gid
del /f /s /q %systemdrive%\*.chk
del /f /s /q %systemdrive%\*.old
del /f /s /q %windir%\*.log
del /f /s /q %windir%\*.bak
del /f /s /q %windir%\prefetch\*.*
del /f /q %userprofile%\cookies\*.*
del /f /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"
for /d %%i in (%userprofile%\Local Settings\Temp\*) do @rd /s /q "%%i"
del /f /s /q %userprofile%\Local Settings\Temp\*.*
for /d %%i in (%windir%\temp\*) do @rd /s /q "%%i"
del /f /s /q %windir%\temp\*.*
for /d %%i in (%systemdrive%\recycled\*) do @rd /s /q "%%i"
del /f /s /q %systemdrive%\recycled\*.*
for /d %%i in (%userprofile%\recent\*) do @rd /s /q "%%i"
del /f /s /q %userprofile%\recent\*.*
for /d %%i in (%userprofile%\NetHood\*) do @rd /s /q "%%i"
del /f /s /q %userprofile%\NetHood\*.*
echo 清除系统LJ完成!
echo.
pause
98下我试验成功的:
@echo off
echo 正在清除Win98垃圾文件,请稍等......
for /d %%i in (C:\WINDOWS\TEMP\*) do @rd /s /q "%%i"
del /f /s /q C:\WINDOWS\TEMP\*.*
del /f /s /q C:\WINDOWS\Recent\*.*
echo 清除系统LJ完成!
echo.
pause
13 发表于 2007-08-23 21:54 ·  中国 江苏 南京 电信
初级用户
★★
积分 150
发帖 63
注册 2007-05-09 16:54
19年会员
UID 87973
性别 男
状态 离线
请wudixin96指点下,谢谢。
14 发表于 2007-08-23 21:56 ·  中国 江苏 南京 电信
初级用户
★★
积分 150
发帖 63
注册 2007-05-09 16:54
19年会员
UID 87973
性别 男
状态 离线
系统找不到指定的路径。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的路径。
系统找不到指定的路径。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的路径。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的路径。
清除系统LJ完成!

请按任意键继续. . .
15 发表于 2007-08-23 23:47 ·  中国 天津 电信
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
%userprofile%路径中含有空格的

for /d ()括号中的路径有空格也要引号的。
论坛跳转: