Por que '--human-readable' é necessário e não é padrão?

55

Várias ferramentas de linha de comando usam a opção -h ou --human-readable para imprimir o tamanho do arquivo em um formato legível (ou seja, 36G vs 37550836 ).

  • Por que essa opção é necessária e não o padrão?
  • Essas ferramentas não são principalmente para saída para humanos?
por KennyPeanuts 14.11.2011 / 02:27

3 respostas

73
  1. Porque eles não existiam originalmente e o comportamento padrão é compatível com versões anteriores. Além disso, porque eles não existem em todas as variantes unix, e o comportamento padrão é compatível com outras variantes unix.
  2. Para muitas ferramentas, porque elas devem ser analisadas por outras ferramentas. Esse raramente é o caso de ls , mas a análise da saída de du ou df é relativamente comum. (Mente, por df , você deve usar df -P ao analisar.)
  3. Porque alguns humanos preferem o formato 37550836, porque quando você vê um monte desses números, seu tamanho relativo é visualmente claro (número de dígitos).
por 14.11.2011 / 02:34
13

Note que se você definir BLOCKSIZE = human-readable em seu ambiente, este será o padrão, pelo menos para os comandos do GNU coreutils, ou seja, se você estiver usando o bash put:

export BLOCKSIZE=human-readable

no seu arquivo $ HOME / .bashrc.

    
por 13.04.2012 / 03:03
6

Além do que o Gilles disse:

Quando essas ferramentas onde o HDD inventado era muito pequeno, em comparação com hoje. Você não precisou de ajuda para ler um número como 400000.

E se você não gostar, use o sistema de alias. No seu diretório pessoal,

edit ~/.bashrc 

e insira, por exemplo:

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

Observe que, em contraste com muitos outros idiomas, você não pode ter um espaço em branco antes ou atrás do operador de atribuição (sinal de igual).

    
por 13.04.2012 / 09:41