Come leggere l'utilizzo di Unix


16

Ho fatto qualche ricerca, ma non riesco a trovare la documentazione su come funziona l'utilizzo di Unix . So qualcosa (principalmente attraverso tentativi ed errori) ma, per esempio, come faccio a saperlo

/usr/bin/ls  [-aAbcCdeEfFghHilLmnopqrRstuvVx1@] [file]...

significa che puoi includere più di un'opzione? Questo è,

ls -la

Dov'è la documentazione su quale sia la sintassi dell'utilizzo?


POSIX ha qualche voce in capitolo su come devono essere formattati i display di utilizzo / aiuto, ma oltre alle utility di base (GNU), pochi lo seguono in modo coerente.
Tim Post

@ Tim, non ho nulla in uso lì.
sixtyfootersdude,

(per favore non prenderlo come un post RTFM è più un commento divertente) puoi effettivamente eseguire "man man" e scorrere verso il basso per trovare le linee guida della sintassi.
ThinkBonobo,

Risposte:


34

È vero che non c'è RFC o altro, ma non vai troppo lontano dalla base se ti attieni a queste linee guida:

  1. Qualunque cosa tra parentesi angolari < >significa che è richiesta l'opzione:
    <foo>

  2. Qualsiasi cosa tra parentesi quadre [ ]significa che l'opzione è facoltativa:
    [bar]

  3. Le opzioni separate da una pipe |indicano che sono i valori validi:
    --baz=one|two|three

  4. Le opzioni a lettera singola iniziano con un trattino:
    -a

  5. Le opzioni a più lettere iniziano con due trattini:
    --foo-bar

  6. (basato su # 4) Un singolo trattino con più lettere di solito significa l'unione di quelle singole opzioni a lettera singola anziché un'opzione a più lettere. Non tutti i comandi supportano quel tipo di unione. Esempio:
    -aAbBcCè uguale a-a -A -b -B -c -C


1
man man or man 5 man
mpez0

1
Non c'è RFC, ma ci sono le specifiche POSIX , che includono Convenzioni di utilità
Wildcard

6

Non esiste una struttura rigorosa per le pagine man, ma quanto segue copre la maggior parte dei comandi.

Da PAGINE MANUALI (5), Manuale Formati file BSD , sezione "SINTASSI PAGINA MANUALE":

Nella sintassi della pagina manuale, tutto ciò che è richiesto in un normale carattere di testo è il testo. Qualsiasi cosa in un carattere grassetto è una bandiera o un sottocomando. Tutto ciò che è sottolineato è un argomento specificato dall'utente come un nome file.

Qualsiasi argomento racchiuso tra parentesi è considerato facoltativo. Ad esempio, [nome file] indicherebbe un argomento facoltativo per il nome file.

Flag, argomenti o sottocomandi separati da un separatore verticale (|) si escludono a vicenda. Ad esempio, se -a attiva un'opzione e -b disattiva l'opzione, la sintassi per questo comando potrebbe essere -a | -b.

In alcuni casi, potresti persino vedere interi gruppi di argomenti racchiusi tra parentesi e separati da un separatore verticale. Questo è un modo per dimostrare che un comando ha più di una sintassi valida. In altre pagine del manuale, questo è espresso dalla presenza di più righe nella sinossi, ognuna delle quali inizia con il nome del comando. Il formato separato è più comune (e più leggibile), ma non è sempre possibile per comandi con sintassi particolarmente complessa.

Infine, la convenzione notazionale più importante è l'uso dei puntini di sospensione (...). Ciò indica che a questo punto è possibile aggiungere ulteriori argomenti.


5

Le linee di utilizzo non seguono nulla di coerente.

È necessario utilizzare man lso info lsper ottenere un livello più coerente di informazioni.

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.