将字节数转换成用户可读的格式


=Start=

缘由:

突然想到的一个问题,可能和最近经常在Linux终端下工作有关。和上次的「Linux下用shell将’xx秒’转换成’a小时b分钟c秒’的格式」类似,日常效率相关的小工具。

搜索关键字:

bash format bytes to human readable size

参考解答:
$ numfmt --to=iec-i --suffix=B --format="%.3f" 4953205820
4.614GiB
$ gnumfmt --to=iec-i --suffix=B --format="%.3f" 4953205820  # Mac
4.614GiB
# 关于「numfmt」这个命令的使用样例

$ numfmt --to=si 500000
500K

$ numfmt --to=iec 500000
489K

$ numfmt --to=iec-i 500000
489Ki

$ numfmt --from=si 1M
1000000

$ numfmt --from=iec 1M
1048576

# with '--from=auto', M=Mega, Mi=Mebi
$ numfmt --from=auto 1M
1000000
$ numfmt --from=auto 1Mi
1048576

$ numfmt --from=si --to=iec 1T
932G
参考链接:

=END=

, , ,

《“将字节数转换成用户可读的格式”》 有 1 条评论

  1. `$ vim ~/.zshrc
    sizes() { gnumfmt –to=iec-i –suffix=B –format=”%.3f” “$1”; }
    $ source ~/.zshrc
    $ sizes 500000
    `

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注