用批处理实现Windows下子目录大小统计功能
来源:互联网 发布:小米手机数据恢复软件 编辑:程序博客网 时间:2024/06/03 22:07
用批处理实现Windows下子目录大小统计功能
吴旻
泰岩网络工作室
统计当前目录下各文件夹的大小,在Linux下面比较简单,一个 du -sh * 命令就基本解决问题了。虽然在资源管理器是单击右键,然后选属性可以看到某个文件夹的大小,但当我想知道C:\windows目录下哪个子目录占用了1G以上的空间时,这个方法就显得太笨了,要一个一个点半天才能有结果。
本文提到的方法,是利用了 dir /s 这个命令,它可以对一个目录进行统计,并在最后给出综合的结果。核心的代码有三部分:
1、用 dir /ad /b %1 > 1.txt 将指定目录下的子目录保存到 1.txt 文件中,以备后用
2、使用 for 语句从 1.txt 文件中读出每一个子目录,再用 dir /s 将此子目录的结果保存到 2.txt 文件中。
3、从 2.txt 文件中读出最后一行,就是想要的那个子目录的统计结果。此处,我再次使用了 for 语句的功能,即逐行读出,但只显示最后一行。
其它部分代码,是配合整个批处理来使用的。把如下代码保存了一个批处理文件(如:lu.bat),就可以使用了
@echo offIF [%1]==[] GOTO USAGEif NOT exist "%1" (ECHO "%1" path not exist & GOTO END):DIR_PATHdir /ad /b %1 > 1.txtsetlocal enabledelayedexpansionfor /f "tokens=*" %%i in (1.txt) do (rem echo dir /s "%1\%%i" |findstr 个文件 > 2.txt || echo. > 2.txtrem for /f "eol=0 tokens=1,3 " %%j in (2.txt) do set ll=%%k 字节 %1\%%i %%j 个文件 for /f "eol=0 tokens=1,3 " %%j in (2.txt) do set ll=%%k & set ll=!ll:~0,-9! M %1\%%i %%j 个文件 echo !ll! rem echo.)set total= Endlocaldel 1.txt 2.txtGOTO END:USAGEecho Usage: %0 dir_pathGOTO END :ENDrem pause
- 用批处理实现Windows下子目录大小统计功能
- 如何用shell统计当前目录下子目录的大小
- 限定主目录下子目录大小
- Shell脚本统计指定目录下子目录中的文件个数
- powershell 统计目录大小
- PHP 统计目录大小
- windows 遍历目录 批处理
- linux curses库下子窗口实现行选择的功能
- windows常用功能批处理
- python获取当前目录下子文件夹大小 然后大到小排序 询问是否删除某些子文件夹
- 如何查看目录大小统计?
- Windows批处理 - 获取目录结构
- windows 计算目录大小
- windows 计算目录大小
- PHP遍历目录和统计目录大小
- Python读取目录下子文件
- 用批处理实现windows更新自动安装
- 用windows批处理实现批量增量改名
- hadoop wordcount运行实例
- itext5 生成pdf 使用总结
- jQuery 引起的学习。
- MySQL-Proxy
- Liferay portlet 如何取得客户端的IP地址(portal get remote IP)
- 用批处理实现Windows下子目录大小统计功能
- 迭代循环文件夹的处理方法
- zoj 2747 Paint the Wall
- JUnit4单元测试
- Android OpenGL学习笔记(二)之----三角形的绘制.
- struts spring 整合详解
- POSIX 线程安全 摘录
- iptables二层过滤机制详解
- eval 妙用