为什么需要“--人类可读”而不是默认值?

为什么需要“--人类可读”而不是默认值?

一些命令行工具使用-h或选项以人类可读的格式(即vs )--human-readable打印文件大小。36G37550836

  • 为什么需要这个选项而不是默认选项?
  • 这些工具不主要是为了输出给人类吗?

答案1

  1. 因为它们最初并不存在,并且默认行为是向后兼容的。另外,因为它们并不存在于所有 UNIX 变体上,并且默认行为与其他 UNIX 变体兼容。
  2. 对于许多工具来说,因为它们旨在可由其他工具解析。这种情况很少发生,但解析orls的输出相对常见。 (注意,解析时应该使用for 。)dudfdfdf -P
  3. 因为有些人更喜欢 37550836 格式,因为当你看到一堆这样的数字时,它们的相对大小在视觉上是清晰的(位数)。

答案2

请注意,如果您在环境中设置 BLOCKSIZE=人类可读,则这将是默认值,至少对于 GNU coreutils 中的命令而言,即如果您使用的是 bash put:

export BLOCKSIZE=human-readable

在您的 $HOME/.bashrc 文件中。

答案3

除了吉尔斯所说:

当这些工具发明时,硬盘与今天相比非常小。您不需要帮助就能读取 400000 这样的数字。

如果您不喜欢它,请使用别名系统。在你的主目录中,

edit ~/.bashrc 

并插入,例如:

alias df='df -h'
alias du='du -h'

请注意,与许多其他语言相比,赋值运算符(等号)之前或之后不允许有空格。

相关内容