这对你们来说可能听起来很容易,我只是想列出目录中的文件列表及其大小。我尝试了一堆选项 dir / help,但似乎无法正确处理。你能帮忙吗?我也环顾四周,但我发现的只是目录大小的参考。
I want the out put to look like this
a.txt 21
b.txt 72
3.txt 73
提前谢谢你
从命令行:
for %F in (*) do @echo %F %~zF
如果在批处理文件中使用,则将百分比加倍。
@echo off
for %%F in (*) do echo %%F %%~zF
对于固定宽度,最好先列出尺寸,因为宽度变化不大。12 位数字几乎足够 1 TB。文件名长度可以变化很大。
这是一个以字节为单位列出大小(最多 12 位)的批处理脚本,后跟文件名:
@echo off
setlocal disableDelayedExpansion
for %%F in (*) do (
set "name=%%F"
set "size= %%~ZF"
setlocal enableDelayedExpansion
echo !size:~-12! !name!
endlocal
)
延迟扩展的切换是为了防止文件名在包含!
字符时损坏。如果启用延迟扩展并且值包含 ,则任何 FOR 变量值都会损坏!
。