我正在使用DU
函数将目录大小输出到文件中,然后将其移动到 excel 文件中以添加总数。是否可以仅以 MB 为单位输出目录的大小(即使大小以 KB 或 GB 为单位):
例如,如果文件大小为 50kb,则输出将显示 0.048MB
但是我知道,du -h
如果大小大于 1024,我无法保持 MB 为单位的大小,因为它会切换到 1G。但是du -m
,值旁边没有显示 M(兆字节),因此对人类并不友好。
在此先感谢,
这是-m
选项。因此,例如:
$ du -s -m <my_directory_here>
更新
哦……你想在兆字节数之后打印一个“M”。给你:
$ du -s -m /usr/local | sed 's/^\([0-9]*\)\(.*\)$/\1M \2/'
或者...
$ du -s -m /usr/local | sed 's/^\([0-9]*\)\(.*\)$/\1MiB \2/'
或者...
$ du -s -m /usr/local | sed 's/^\([0-9]*\)\(.*\)$/\1 MegaBytes \2/'
等等
更新2
如果你想要分数,我会用它du -k
来打印 KiB,然后:
$ du -s -k * | awk '{printf "%.3f MiB %s\n", $1/1024, $2}'
43.355 MiB bin
0.008 MiB etc
0.562 MiB include
5.836 MiB lib
0.008 MiB man
0.004 MiB mysql
2259.738 MiB mysql-5.5.27-osx10.6-x86_64
45.711 MiB share
340.641 MiB texlive