无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 9580|回复: 13
打印 上一主题 下一主题

如何删除0字节文件?

[复制链接]
跳转到指定楼层
1#
发表于 2009-6-1 17:04:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何用cmd命令删除0字节的文件和空文件夹?
2#
发表于 2009-6-1 18:33:00 | 只看该作者
del xx
rd /s /q xx
回复

使用道具 举报

3#
发表于 2009-6-1 22:43:39 | 只看该作者
楼主是不是要遍历某个路径删除符合条件的所有文件和文件夹啊?如果是这样这个问题就有点难度了,看看高手如何解决
回复

使用道具 举报

4#
发表于 2009-6-1 23:18:41 | 只看该作者
原帖由 wind_fsm 于 2009-6-1 22:43 发表
楼主是不是要遍历某个路径删除符合条件的所有文件和文件夹啊?如果是这样这个问题就有点难度了,看看高手如何解决

符合条件?有些系统文件就是0字节,删除了又不能自动生成,是个费力的活路
回复

使用道具 举报

5#
发表于 2009-6-2 08:22:35 | 只看该作者
搜索一次空文件并删除之
比如要删除 e:\xyz文件夹中的空文件 可以运行 "df e:\xyz"
df.cmd内容如下:
-----------------------------
@echo off
for /f "delims=" %%c in ('dir %1 /a-d /b /s') do (
if "%%~zc"=="0" (echo %%c &del "%%c" /q /f)
)
-----------------------------


搜索一次空文件夹并删除之
比如要删除 e:\xyz 文件夹中的空文件夹 可以运行 “dd e:\xyz ”
dd.cmd内容如下:
-------------------------------
@echo off
for /f "delims=" %%c in ('dir %1 /b /ad /s') do (
dir /b /a "%%c"|findstr .>nul|| echo %%c
dir /b /a "%%c"|findstr .>nul|| rd /q "%%c"
)
---------------------------------

[ 本帖最后由 dos时代菜鸟 于 2009-6-2 08:48 编辑 ]
回复

使用道具 举报

6#
发表于 2009-6-2 08:32:32 | 只看该作者
删除0字节文件如下.

@echo off
for /f "delims=" %%c in ('dir %1 /b /a-d /s') do if "%%~zc"=="0" del /f "%%c"

[ 本帖最后由 chenall 于 2009-6-2 15:39 编辑 ]
回复

使用道具 举报

7#
发表于 2009-6-2 08:49:50 | 只看该作者
原帖由 chenall 于 2009-6-2 08:32 发表
删除0字节文件如下.

@echo off
for /f "delims=" %%c in ('dir %1 /b /ad /s') do if "%%~zc"=="0" del /f "%%c"



是不是忽略了 /ad 应该改成 /a-d
回复

使用道具 举报

8#
发表于 2009-6-2 09:53:01 | 只看该作者
高手出现,学习了……
回复

使用道具 举报

9#
 楼主| 发表于 2009-6-2 09:59:06 | 只看该作者
例如,系统盘C中有许多为0字节的文件和空文件夹,有些是允许删除的有些是系统不让删的,如何用一个CMD命令把系统允许删的给删掉?
回复

使用道具 举报

10#
 楼主| 发表于 2009-6-2 10:09:20 | 只看该作者
例如,在系统盘C中有许多为0字节的系统文件和空文件夹,其中有些是可以删除的有些是系统不允许删除的,如何用CMD命令把这些可以删除的删掉?
回复

使用道具 举报

11#
发表于 2009-6-2 15:39:38 | 只看该作者
原帖由 dos时代菜鸟 于 2009-6-2 08:49 发表



是不是忽略了 /ad 应该改成 /a-d

是的应该改成
/a-d

写少了.
回复

使用道具 举报

12#
发表于 2009-6-3 07:45:20 | 只看该作者
原帖由 开始就是未来 于 2009-6-2 10:09 发表
例如,在系统盘C中有许多为0字节的系统文件和空文件夹,其中有些是可以删除的有些是系统不允许删除的,如何用CMD命令把这些可以删除的删掉?


需要把这些不需要删除的文件和文件夹列入文本文件充当数据库,然后在for命令中 嵌套 for/f  命令或者 find 命令 加以识别。
如果搜索到的空文件或者文件夹在文本数据库中就跳过之。

另外,大部分系统必须的空文件夹和空文件都会被系统锁定,删除不下去,或者即使删除了系统也会自动生成。
回复

使用道具 举报

13#
发表于 2010-1-1 16:28:01 | 只看该作者

回复 #6 chenall 的帖子

原贴内容如下:
@echo off
for /f "delims=" %%c in ('dir %1 /b /a-d /s') do if "%%~zc"=="0" del /f "%%c"

本人经试验发现,该批处理不能删除当前目录下的0字节文件和具有隐藏属性的0字节文件,应改为:
@echo off
cd/d %1 (比如 cd/d c:\)
for /f "delims=" %%c in ('dir/b/a-d/s') do if "%%~zc"=="0" del/a/f "%%c"
该命令将删除%1目录下所有的0字节文件(包括子目录中的文件)

[ 本帖最后由 jzyjjp 于 2010-1-2 11:51 编辑 ]
回复

使用道具 举报

14#
发表于 2010-1-9 22:43:44 | 只看该作者
本人近日发现,删除c:\的0字节文件没问题,
但如果删除c盘下所有的0字节文件就会引起问题,比如右键“发送到”的功能已不完全了,可能还会有其他的未发现的问题。
所以,推荐大家可以删除c:\的0字节文件,但最好不要删除其他地方的0字节文件。

所以,上述命令应改为:
@echo off
cd/d c:\
for /f "delims=" %%c in ('dir/b/a-d') do if "%%~zc"=="0" del/a/f "%%c"

[ 本帖最后由 jzyjjp 于 2010-1-9 22:47 编辑 ]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-26 08:44

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表