在 Unix (Tru64) 中,如何让ls
命令以兆字节为单位显示文件大小?目前,我可以使用以下命令以字节为单位显示:
ls -la
答案1
也许-h
对你来说就足够了:
-h
与 -l 选项一起使用时,使用单位后缀:字节、千字节、兆字节、千兆字节、太字节和拍字节,以便使用以 2 为基数将大小的数字数量减少到三位或更少。
ls -lah
一般建议:man commandname
阅读某个命令的手册/帮助,例如这里man ls
。
答案2
ls --block-size=M
以兆字节为单位打印大小,但对于小于 1 MB 的任何内容也显示 1MB。不过,我不确定此选项是否适用于您的 UNIX 版本的 ls。
ls -lh
如果文件足够大,实际上也会以 GB 为单位打印大小(好吧,无论如何:Linux64 位确实有效 :>)
在侧节点上:du -sh *
还打印当前目录中的目录大小。
答案3
你必须使用它awk
来为你做数学运算:
ls -l | awk 'BEGIN{mega=1048576} $5 >= mega {$5 = $5/mega "MB"} {print}'
这不会影响小于的文件的输出mega
。
您可能需要调整字段编号以匹配您的ls
布局方式。mega
如果您愿意,可以将其更改为“1000000”。
这会打印出比您想要的更多的小数位。您可以实现舍入函数。
答案4
尝试一下ls -lash
,它以人类可读的格式打印尺寸