Onde está “mostrando a saída do comando 'ls' verticalmente” documentado?

30

Eu descobri que é possível mostrar a saída do lscomando verticalmente usando o -1switch:

$ ls -1

Mas não consegui encontrá-lo no manual de ls. É uma opção secreta?

Meysam
fonte
11
man lsse dizer: -1 list one file per line. As páginas de informações geralmente contêm mais informações, tente info ls.
Devnull

Respostas:

33

O manual está desatualizado com o programa. Tente ls --help | grep -- ' -1':

  -1                         list one file per line

É uma das últimas opções descritas, se você apenas o fizer ls --help.

Timo
fonte
/bin/lstambém fornece saída em colunas, pelo menos no meu sistema. Qual é o seu lsalias?
terdon
Adição recente? OK, não está na V7. Mas 2BSD tinha . A versão mais antiga do GNU que posso encontrar agora, o fileutils 3.12 , incluindo a documentação na página de manual, e o ChangeLog volta à versão 1.0 em 1990, sem mencionar que ela foi adicionada como uma nova opção. Eu acho que sempre esteve lá.
@timo, Obrigado pela resposta. Boa maneira de Explicação. Funciona para mim.
AMIC MING
6

Como o @Timo indica -1está na ajuda, e o @terdon aponta que -1está documentado no manual para alguma versão. coreutilsO 8.13 possui esse erro na página de manual, a versão 8.22 não existe mais.

Nas diretrizes de hackers para coreutils. É especificado que

As páginas do manual são geradas a partir da saída --help, portanto você não precisa alterar nada em man /.

Portanto, deve haver algo quebrado na conversão que faça com que o semelhante -mapareça, mas não o -1. Ao criar lso patch que propus em resposta à pergunta do @ timo , a página de manual lsé regenerada corretamente e a parte relevante diz:

  -Z, --context
          print any security context of each file

  -1     list one file per line

  -0     list files separated with NUL

  --help display this help and exit

  --version
          output version information and exit

E sem esse patch, o -1 também aparece no manual. O git logmostra nenhuma ação específica para corrigir isso. Tão recente quanto setembro de 2013 help2man, que é usado para gerar as páginas de manual, foi atualizado. O help2man ChangeLogtambém não mostra uma ação específica.

Anthon
fonte
3

Suponho que isso dependerá da sua lsimplementação, mas do meu LMDE (basicamente teste do Debian) tenho:

$ man ls | grep -- '-1'
              across -x, commas -m, horizontal -x, long -l, single-column  -1,
       -1     list one file per line

Assim como (sim, é a mesma saída)

$ ls --help | grep -- '-1'
              across -x, commas -m, horizontal -x, long -l, single-column  -1,
       -1     list one file per line
terdon
fonte
A página de manual do OS X para ls também mostra a opção -1.
Arne
Isso parece ter sido corrigido. O coreutils 8.13 tem esse erro na página de manual, a versão 8.22 não.
Anthon