Board logo

标题: [文本处理] [已解决]批处理怎样删除文件夹及子文件夹内特定大小的多个文件? [打印本页]

作者: playinthesky    时间: 2011-6-23 16:32     标题: [已解决]批处理怎样删除文件夹及子文件夹内特定大小的多个文件?

本帖最后由 playinthesky 于 2011-6-26 19:34 编辑

因为计算机不是很懂,学习批处理有段时间,请大师指教。

在一个文件夹下,有434字节,521字节的.txt文件暗含在子文件中,而且很多,虽然可以通过WINDOWS的搜索功能去除,但是多个的话,一边一边按搜索很累,是否有办法将指定大小的多个包含在子文件夹的指定大小的文件删除?

还有就是字节到底是KB还是K?
作者: playinthesky    时间: 2011-6-23 16:34

标题有点歧义,意思就是删除子文件夹内指定大小字节的多个文档,能帮我下吗?谢谢大家了。
作者: tmplinshi    时间: 2011-6-23 17:05

K 是 KB 的缩写。字节是 B。
  1. @echo off
  2. set size=521
  3. for /f "delims=" %%i in ('dir /a:-d /b /s') do (
  4.     if %%~zi == %size% (
  5.         del /a /f "%%i"
  6.     )
  7. )
复制代码

作者: playinthesky    时间: 2011-6-23 17:34

谢谢版主,真的,很感谢你。
作者: applba    时间: 2011-6-23 19:18

%%~z也可以获取文件体积
作者: Hello123World    时间: 2011-6-24 15:00

字节是b,全英文是:byte。
(其实计算机中有两个常用b,就是所谓的“二b”——bit(位)和byte(字节),1字节=8位,一般windows 7什么32位,64位,就是指这个“位”了。)
作者: Hello123World    时间: 2011-6-24 15:02

3# tmplinshi
为什么要多打个括号,这里省了才好(习惯?)
作者: CrLf    时间: 2011-6-24 15:02

6# Hello123World


怎么听怎么觉的“二b”这词不大对劲...
作者: CrLf    时间: 2011-6-24 15:04

7# Hello123World

考虑可读性的写法,不过这种if后只有一条命令的情况我一般只写成一行,感觉紧凑些




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2