标题: 求一个可以删除0KB的文本文档的批处理。
[打印本页]
作者: JamesYou
时间: 2009-1-13 09:47
标题: 求一个可以删除0KB的文本文档的批处理。
求一个删除0KB的文本文档的程序。
要求:
可以删除A文件夹下所有子目录下的所有0字节的文件。(A文件夹为该批处理所在的文件夹。)
谢了先。
[
Last edited by JamesYou on 2009-1-13 at 10:19 ]
作者: kurt101
时间: 2009-1-13 12:29
@echo off
for /r %%i in (*) do (
if %%~zi==0 del/f/q "%%i"
)
作者: kurt101
时间: 2009-1-13 12:32
看错了,是本文文档的话就把那个* 改为*.txt就可以了
作者: JamesYou
时间: 2009-1-14 09:37
Quote: |
Originally posted by kurt101 at 2009-1-13 12:29:
@echo off
for /r %%i in (*) do (
if %%~zi==0 del/f/q "%%i"
) |
|
那上面这个批处理是不是可以删除*.*文件啊?
作者: pkto
时间: 2009-1-14 12:19
是的。但是这个批处理对长文件名无效,如:"新建 Txt.txt"这个文件如果是0字节的话,就删除无效
作者: JamesYou
时间: 2009-1-19 20:03
那怎么该才会对长文件名有效呢?
作者: netbenton
时间: 2009-1-19 22:09
标题: 试试这个^_^
for /f "tokens=1-3,*" %%a in ('dir /s/a-d *.txt ^|findstr /c:" 0 "^|findstr /c:"-"') do del "%%~fd"
[
Last edited by netbenton on 2009-1-19 at 22:32 ]
作者: pkto
时间: 2009-1-20 13:25
Quote: |
Originally posted by netbenton at 2009-1-19 10:09 PM:
for /f "tokens=1-3,*" %%a in ('dir /s/a-d *.txt ^|findstr /c:" 0 "^|findstr /c:"-"') do del "%%~fd"
[ Last edited by netbenton on 2009-1-19 at 22:32 ] |
|
哈哈,这个是正解啦!
不过执行的时候有些迟滞。偶小动了下:
for /f "tokens=1-3,*" %%a in ('dir /s/a-d
*.* ^|findstr /c:" 0 "^|findstr /c:"-"') do del "%%~fd"
可删除所有0字节的文件,且速度一闪而过。嘻嘻,剽窃哦,netbenton大大原谅啦!
作者: JamesYou
时间: 2009-1-20 15:03
楼上的那个程序是不是支持文件名呢?
作者: JamesYou
时间: 2009-6-2 02:37
可是这些批处理
只能删除当前目录下的0字节的文本文档,而对
当前目录下的
子目录下的0字节的文本文档就无效啊。
我要的是可以删除当前目录下的
子目录下的0字节的文本文档。
[
Last edited by JamesYou on 2009-6-2 at 02:39 ]
作者: ccwan
时间: 2009-6-2 02:56
Quote: |
Originally posted by JamesYou at 2009-6-2 02:37:
可是这些批处理只能能删除当前目录下的0字节的文本文档,而对当前目录下的子目录下的0字节的文本文档就 ... |
|
你试过了吗?它不是只删除当前目录下的,本身就遍历了子目录。
作者: ccwan
时间: 2009-6-2 02:58
Quote: |
Originally posted by pkto at 2009-1-14 12:19:
是的。但是这个批处理对长文件名无效,如:"新建 Txt.txt"这个文件如果是0字节的话,就删除无效 |
|
你试过了吗?"新建 Txt.txt"这样的文件不能删除?