Dove è documentata la "visualizzazione verticale dell'output del comando 'ls"?


30

Ho scoperto che è possibile mostrare l'output del lscomando in verticale usando l' -1interruttore:

$ ls -1

Ma non è stato possibile trovarlo nel manuale di ls. È un'opzione segreta?


1
man lslo dice: -1 list one file per line. Le pagine informative di solito contengono più informazioni, prova info ls.
Devnull

Risposte:


33

Il manuale non è aggiornato con il programma. Prova ls --help | grep -- ' -1':

  -1                         list one file per line

È una delle ultime opzioni descritte se lo fai ls --help.


/bin/lsdà anche l'output in colonne, almeno nel mio sistema. Qual è il tuo lsalias?
terdon

Aggiunta recente? OK, non è in V7. Ma 2BSD ce l'aveva . La versione GNU più vecchia che posso trovare in questo momento, fileutils 3.12 ce l' aveva, inclusa la documentazione nella pagina man, e il ChangeLog risale alla versione 1.0 nel 1990 senza menzionarla come nuova opzione. Penso che sia sempre stato lì.

@timo, grazie per la risposta. Bel modo di spiegazione. Per me va bene.
AMIC MING

6

Come indica @Timo -1è nella guida, e @terdon sottolinea che -1è documentato nel manuale per alcune versioni. coreutils8.13 ha quell'errore nella pagina man, la versione 8.22 non lo fa più.

Nelle linee guida di hacking per coreutils. È specificato che

Le pagine man sono generate dall'output --help, quindi non dovresti aver bisogno di cambiare nulla in man /.

Quindi ci deve essere qualcosa di rotto nella conversione che fa -mapparire il simile ma non il -1. Durante la compilazione lscon la patch che ho proposto in risposta alla domanda di @ timo , la pagina di manuale per lsviene rigenerata correttamente e la parte pertinente recita:

  -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 senza quella patch, il -1 appare anche nel manuale. Non git logmostra alcuna azione specifica per correggere questo. È stato aggiornato a settembre 2013 help2man, utilizzato per generare le pagine man. Il help2man ChangeLognon mostra una determinata azione sia.


3

Suppongo che questo dipenderà dalla tua lsimplementazione, ma dal mio LMDE (sostanzialmente test Debian) ho:

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

Inoltre (sì, è lo stesso output)

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

La pagina man di OS X per ls mostra anche l'opzione -1.
Arne,

Questo sembra essere stato risolto. coreutils 8.13 ha quell'errore nella pagina man, la versione 8.22 no.
Anthon,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.