www-it-traduzioni
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniz


From: Marco C.
Subject: Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale]
Date: Sun, 14 Aug 2016 08:56:31 +0200
User-agent: Roundcube Webmail/1.0.6

grazie!
Buona giornata
Marco
************************************
Le sezioni di un comando

La prima parola che deve essere digitata nella riga di comando è il comando che si vuole eseguire. Nella sezione 'Iniziamo' abbiamo visto una chiamata al comando date, che ci ha restituito la data e l'ora correnti.

Argomentazioni

Un altro comando che possiamo usare è echo, che visualizza una determinata informazione all'utente che la richiede, ma è utile solo se si specifica l'informazione da mostrare. Fortunatamente è possibile aggiungere più informazioni a un certo comando per modificarne il comportamento, queste informazioni sono dette argomenti. Il comando echo, come accennato, ripete solamente ciò che viene inserito dopo il comando stesso:

$ echo foo
foo
In questo caso l'argomento era foo, ma non c'è bisogno di limitare il numero di argomenti a uno. Ogni parola di testo inserita, a parte la prima parola che è il comando stesso, sarà considerata come un argomento da passare al comando. Se si vuole che echo risponda con parole multiple, come per esempio foo bar wlg, è possibile passare argomenti multipli:

$ echo foo bar wlg
foo bar wlg
Gli argomenti sono normalmente separati da 'spazi bianchi' (caratteri che appaiono bianchi sulla carta). Non importa quanti spazi si mettono, basta che c'è ne sia almeno uno. Per esempio, scrivendo:

$ echo foo              bar
foo bar
con molti spazi fra i due argomenti, gli spazi "extra" vengono ignorati e l'output mostra i due argomenti separati da uno spazio singolo. Per comunicare alla riga di comando che gli spazi sono parte di un singolo argomento è necessario delimitare fra virgolette (") quell'argomento:

$ echo "foo              bar"
foo              bar
Come vedremo più avanti, c'è più di un modo per citare il testo e le varie forme potrebbero (o non potrebbero) differenziarsi nei risultati a seconda del contenuto del testo citato/quotato.
Opzioni

Ritornando al comando date , supponiamo di voler ricevere la data e l'ora come informazione UTC. Per ottenere questo risultato il comando date prevede l'opzione --utc . Notate bene i due trattini iniziali. Questi indicano argomenti che un comando controlla quando si avvia e determinano il comportamento del comando stesso. Il comando date cerca l'opzione --utc e dice, "OK, so che state chiedendo il tempo in formato UTC". Questo argomento è diverso da argomenti inventati, come "foo bar wlg" richiamato negli argomenti del comando echo.

A parte i trattini che precedono la parola, --utc è usato proprio come un argomento:

$ date --utc
Thu Mar 24 18:12:44 UTC 2016
Di solito è possibile comprimere queste opzioni in una forma breve come, per esempio, date -u (la versione corta solitamente ha un solo trattino). Le opzioni corte sono più veloci da scrivere (usatele quando state scrivendo nella shell), mentre le opzioni più lunghe sono più facili da leggere (usatele negli scripts).

Ora guardiamo la data di ieri invece di quella di oggi. Per fare questo dobbiamo specificare l'argomento --date (o in breve -d),che chiede a sua volta un altro argomento. L'argomento per un'opzione è semplicemente la parola che segue quell'opzione. In questo caso il comando sarebbe date --date yesterday.

Visto che le opzioni sono solo argomenti è possibile combinare due o più opzioni per creare comportamenti più sofisticati. Per esempio, per combinare le due opzioni precedenti e avere la data di ieri in formato UTC si scrive:

$ date --date yesterday -u
Wed Mar 23 18:16:58 UTC 2016
Come potete notare, ci sono opzioni che si aspettano di essere seguite da un argomento (-d, --date) e altre che non se lo aspettano (-u, --utc). Passare degli argomenti un pò più complessi al comando --date permette di ottenere informazioni interessanti, come sapere se l'anno in corso è bisestile (l'ultimo giorno di febbraio è il 29). E' possibile scoprirlo chiedendo al comando quale giorno precede il primo di marzo:

$ date --date "1march yesterday" -u
Mon Feb 29 00:00:00 UTC 2016
La domanda che avete fatto a date è : se oggi è il primo marzo dell'anno corrente, che data sarebbe ieri? Quindi, si, il 2016 è bisestile. Potrebbe anche essere utile sapere il giorno della settimana di una certa data, per esempio l'ultimo dell'anno 2016:

$ date -d 31dec +%A
Saturday
che è lo stesso di:

$ date --date 31december2016 +%A
Saturday

In questo caso abbiamo passato al comando date l'opzione -d (--date) seguita dalla data dell'ultimo dell'anno, e poi un argomento speciale specifico del comando date. I comandi a volte hanno degli argomenti strani ed esoterici... Il comando date può accettare argomenti format che iniziano con un più (+). Il format %A chiede di visualizzare il giorno della settimana di una certa data (mentre %a avrebbe chiesto di visualizzare il giorno della settimana abbreviato: provate!). Per il momento non è necessario preoccuparsi di questi dettagli: vedremo come ottenere aiuto dalla riga di comando imparando i dettagli dei comandi. Intanto, assaggiamo qualcosa di sfizioso combinando i comandi echo e date:

$ echo "This New Year's Eve falls on a $( date -d 31dec +%A )"
This New Year's Eve falls on a Saturday

Ripetere e modificare i comandi

E' possibile usare la freccia verso l'alto per recuperare un comando già utilizzato in precedenza e, in generale, si usano le frecce direzionali per visualizzare i vari comandi già usati (su e giù) e per muoversi dentro un singolo comando (destra e sinistra). Usando le frecce assieme al tasto Backspace, è possibile cambiare parti del comando e trasformarlo in un nuovo comando. Ogni volta che si preme il tasto Enter, il comando modificato viene inviato al terminale ed gira esattamente come se fosse stato digitato da zero.
************************************
Il 13-08-2016 21:54 Enrico Bella ha scritto:
Il 13/08/2016 21:50, Marco C. ha scritto:

Un altro comando che possiamo usare è echo,che visualizza una
determinata informazione all'utente che la richiede, ma è utile
solo se NON si specifica l'informazione da mostrare.
 Ciao, in questo caso mi pare che il NON sia da togliere no? Cioè
echo è utile solo specificando cosa deve fare.
 Manca anche uno spazio dopo la prima virgola :)

 Buona serata,
 Enrco

--
http://savannah.gnu.org/projects/www-it/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]