ls 命令:如何以兆字节显示文件大小?

ls 命令:如何以兆字节显示文件大小?

在 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,它以人类可读的格式打印尺寸

相关内容