文件列表附加文件大小

利用了For /R和Tree /F遍历文件的顺序是一定的原理跑出文件结构和及其大小.

由于脚本中用了比较多的findstr、find以及for嵌套,所以跑起来很慢.建议文件比较多的不要用这个来跑。
list_with_size.jpg

List_with_Size.bat
[code]
:: Code by lxmxn @ bbs.cn-dos.net
:: Date 2707-09-26

rem 关闭命令行回显并打开延迟扩展

@echo %bg% off & SetLocal EnableDelayedExpansion

rem 对当前目录及其子目录中的每个文件大小进行索引
set tnum=1
for /r .\ %%a in (*) do (
set "file!tnum!_%%~nxa=%%~za"
set /a tnum+=1
)

rem 处理TREE的输入并显示结果
set tnum=1

echo %cd%
echo ************************************************
for /F "delims=" %%a in ('tree /F^|more +3') do (
echo %%a|findstr /R "├ └" >nul && (
echo\%%a
) || (
echo %%a|findstr /R /C:"^│[ ]*$" >nul 2>nul && (
echo\%%a
) || (
for /f "delims=" %%c in ("%%a") do (
set string=%%c
set string=!string:│=!
for /f "tokens=* delims= " %%d in ("!string!") do set fname=%%d
if not "!fname!"=="" (
call echo\%%a [%%file!tnum!_!fname!%%]
set /a tnum+=1
) else (echo\%%a)
)
)
)
)
[/code]

This entry was posted in Bat/Vbs/Html/... Script. Bookmark the permalink.

2 Responses to 文件列表附加文件大小

  1. yovie says:

    我来捧场,恭贺开张,怎么关闭q-zone啊?

  2. lxmxn says:

    @yovie:
    申请关闭QQ空间de页面:
    http://imgcache.qq.com/qzone/web/load_login_2.htm

发表评论

您的电子邮箱不会被公开。 标记为 * 的区域必须填写

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>