“ls”的选项“-h”是否以 MB 或 MiB 为单位显示大小,并且在基于 Unix 的系统上是否一致?

“ls”的选项“-h”是否以 MB 或 MiB 为单位显示大小,并且在基于 Unix 的系统上是否一致?

通常的ls命令可以使用选项显示文件的大小-h,我对它的显示有点怀疑MB或者管理信息库

例如 :

$ ls -lha
drwxr-xr-x 2 user group 4.0K Apr  2 21:49 . 
drwxr-xr-x 5 user group 4.0K Apr  2 21:49 ..
-rw-r--r-- 1 user group 129M Apr  2 21:49 2018-04-02T21:49:08.981976.hdf5

所以,这给我留下了两个问题:

  • 是否ls -lha以 MB 或 MiB 为单位显示大小?
  • 随着时间的推移,基于 Unix 的操作系统及其自己的版本是否保持一致?

注意:这个问题不仅应该考虑基于 Unix 的商业操作系统。

答案1

来自 ls 联机帮助页:

-h, --human-readable
         with -l and -s, print sizes like 1K 234M 2G etc.
--si   likewise, but use powers of 1000 not 1024

所以如果你只使用 -h 你将得到 MiB (^1024)。如果将 --si 添加到选项中,它将使用 MB (^1000)。在 ubuntu、debian 和 redhat 上经过验证。目前我无法访问任何商业 UNIX 操作系统,但它们往往不包含 -h 选项。

相关内容