【发布时间】:2016-08-31 15:21:24
【问题描述】:
我正在使用以下内容从 shell 中获取人类友好的文件大小。
ls -hl /path/to/file | awk '{print $5}'
它在带有 bash 的 Mac OSX 中运行良好。我不确定它是否真正便携,或者是否有标准的便携方式来实现相同的结果。
【问题讨论】:
-
不要解析
ls,而是查看您的stat手册页。 -
但是为了可移植性,您需要使用在多个平台上运行相同的通用语言。例如stackoverflow.com/a/512645/7552
-
您在寻找怎样的便携性? POSIX?苏?运行busybox的嵌入式系统?
-
如果你这样做
stat -c %s /path/to/file会得到你的字节大小。但不是人类友好模式。 -
只是 posix,人类友好是目标,虽然我想我可以使用 stat 并除以 1024*N