1.10 Specifica delle opzioni
Se è necessario aggiungere opzioni, è possibile specificarle dopo il nome del comando. Le opzioni brevi sono specificate con un trattino, seguito da un singolo carattere. Le opzioni brevi sono il modo in cui le opzioni erano tradizionalmente specificate.
Spesso il personaggio è scelto per essere mnemonico per il suo scopo, come scegliere la lettera “a” per “tutti”.
Più opzioni singole possono essere fornite come opzioni separate come -a -l -r o combinate come -alr.
Nel seguente esempio, l’opzione -l viene fornita al comando ls, che si traduce in un output “long display”:
sysadmin @ localhost: ~ $ ls -l
total 0
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22: 25 Desktop
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Documenti
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Download
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Musica
drwxr-xr -x 1 sysadmin sysadmin 0 set 18 22:25 Immagini
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Public
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Modelli
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 video
drwxr-xr-x 1 sysadmin sysadmin 420 18 set 22:25 test
Nota: ulteriori dettagli verranno forniti in una sezione successiva relativa alla funzione del comando ls. Per ora, viene usato solo per dimostrare come eseguire i comandi sulla riga di comando.
È possibile digitare il nome di un comando con più opzioni brevi. L’output di tutti questi esempi è lo stesso, -l fornirà un lungo elenco, mentre -r inverte l’ordine di visualizzazione dei risultati:
ls -l -r
ls -rl
ls -lr
sysadmin @ localhost: ~ $ ls -l -r
totale 0
drwxr-xr-x 1 sysadmin sysadmin 420 18 set 22:25 test
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 video
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Modelli
drwxr -xr-x 1 sysadmin sysadmin 0 set 18 22:25 Public
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Immagini
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Music
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Download
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Documenti
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Desktop
In generale, le opzioni brevi possono essere combinate con altre opzioni brevi in qualsiasi ordine. L’eccezione a ciò è quando un’opzione richiede un argomento.
Ad esempio, l’opzione -w al comando ls specifica la larghezza dell’output desiderato e pertanto richiede un argomento. Se combinato con altre opzioni, l’opzione -w può essere specificata per ultima, seguita dal suo argomento ed essere ancora valida, come in ls -rtw 40, che specifica una larghezza di output di 40 caratteri. Altrimenti, l’opzione -w non può essere combinata con altre opzioni e deve essere fornita separatamente.
sysadmin @ localhost: ~ $ ls -l -r
totale 0
drwxr-xr-x 1 sysadmin sysadmin 420 18 set 22:25 test
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 video
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Modelli
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Public
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Immagini
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22 : 25 Musica
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Download
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Documenti
drwxr-xr-x 1 sysadmin sysadmin 0 set 18 22:25 Desktop
Se si utilizza più opzioni che richiedono argomenti, quindi non combinarli. Ad esempio, anche l’opzione -T richiede un argomento. Per soddisfare entrambi gli argomenti, ogni opzione è data separatamente:
sysadmin @ localhost: ~ $ ls -w 40 -T 12
Modelli di musica desktop
Documenti Immagini Video
Download Test pubblico
Alcuni comandi supportano opzioni aggiuntive che sono più lunghe di un singolo carattere. Le opzioni lunghe per i comandi sono precedute da un doppio trattino – e il significato dell’opzione è in genere il nome dell’opzione, come –all. Ad esempio:
sysadmin @ localhost: ~ $ ls –all
. .bashrc .selected_editor Download Test pubblico
. .cache Modelli musicali desktop .bash_logout
.profile Documenti Immagini Video
Per comandi che supportano entrambe le opzioni long e short, esegui contemporaneamente il comando usando le opzioni long e short:
sysadmin @ localhost: ~ $ ls – -all –reverse -t
.profile Video Immagini Documenti .bashrc.
.bash_logout Modelli Music Desktop ..
test Download pubblici .selected_editor .cache I
comandi che supportano le opzioni lunghe spesso supportano anche argomenti che possono essere specificati con o senza un simbolo uguale (l’output di entrambi i comandi è lo stesso):
ls –sort time
ls –sort = time
sysadmin @ localhost: ~ $ ls –sort = time
Documenti desktop Download Immagini musicali Modelli pubblici Test video
Esiste un’opzione speciale, il doppio trattino “solitario”, che può essere utilizzato per indicare la fine di tutte le opzioni per il comando. Ciò può essere utile in alcune circostanze in cui non è chiaro se parte del testo che segue le opzioni debba essere interpretato come un’opzione aggiuntiva o come argomento del comando.
Ad esempio, se il comando touch tenta di creare un file chiamato –badname:
sysadmin @ localhost: ~ $ touch –badname
touch: opzione non riconosciuta ‘–badname’
Prova ‘touch –help’ per ulteriori informazioni.
Il comando tenta di interpretare –badname come opzione anziché come argomento. Tuttavia, se il doppio trattino solitario – viene posto prima del nome file, indicando che non ci sono più opzioni, il nome file può essere interpretato correttamente come argomento:
sysadmin @ localhost: ~ $ touch – –badname
sysadmin @ localhost: ~ $ ls
–badname Documenti Musica Video pubblici
Download desktop Immagini Modelli test
Nota: Il nome del file nell’esempio precedente è considerato “errato” perché l’inserimento di trattini all’inizio dei nomi dei file, sebbene consentito, può causare problemi quando si tenta di accedere al file.
Considera questo
Esiste un terzo tipo di opzione per alcuni comandi selezionati. Mentre le opzioni utilizzate nella versione AT&T di UNIX utilizzavano un singolo trattino e la porta GNU di quei comandi utilizzava due trattini, la versione Berkley Software Distribution (BSD) di UNIX utilizzava opzioni senza trattino.
Questa sintassi “senza trattino” è abbastanza rara nella maggior parte delle distribuzioni Linux. Un paio di comandi notevoli che supportano le opzioni di stile UNIX di BSD sono i comandi ps e tar; entrambi questi comandi supportano anche lo stile di trattino singolo e doppio delle opzioni.
Nel terminale in basso, ci sono due comandi simili, il primo comando viene eseguito con un’opzione di stile UNIX tradizionale (con trattini singoli) e il secondo comando viene eseguito con un’opzione di stile BSD (senza trattini).
sysadmin @ localhost: ~ $ ps -u sysadmin
PID TTY TIME CMD
79? 00:00:00 bash
122? 00:00:00 ps
sysadmin @ localhost: ~ $ ps u
PID UTENTE% CPU% MEM VSZ RSS TTY STAT TEMPO DI INIZIO COMANDO
sysadmin 79 0,0 0,0 18176 3428? S 20:23 0:00 -bash
sysadmin 120 0,0 0,0 15568 2040? R + 21:26 0:00 ps u