[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: |
Wed, 31 Aug 2016 10:53:21 +0200 |
User-agent: |
Roundcube Webmail/1.0.6 |
Ho corretto usando la frase di Francesco:
Riprendiamo il comando date, e supponiamo di voler effettivamente
ottenere data e ora UTC (tempo universale).
Grazie
*******************************
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 ce 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 quotare il testo e le
varie forme potrebbero (o non potrebbero) differenziarsi nei risultati a
seconda del contenuto del testo quotato.
Opzioni
Riprendiamo il comando date, e supponiamo di voler effettivamente
ottenere data e ora UTC (tempo universale). 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 sono seguite da un argomento
(-d, --date) e altre che non lo sono (-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 e viene eseguito
come se fosse stato digitato da zero.
*******************************
Il 29-08-2016 18:06 Francesco Potortì ha scritto:
Marco C.:
l'ho modificata cosi` :
"supponiamo di voler ricevere le informazioni in base al tempo
universale (UTC)"
va bene adesso?
Come scrivevo nella mail precedente, secondo me si può far di meglio:
Revisiting the date command, suppose you actually wanted the UTC
date/time information displayed.
====
Riprendiamo il comando date, e supponiamo di voler effettivamente
ottenere data e ora UTC (tempo universale).
====
La parentesi serve solo se prima non si è paralto di cosa è UTC,
altrimenti va omessa.
La parola effettivamente va messa solo se ha senso nel contesto,
altrimenti va omessa.
Primo, "ricevere le informazioni" non mi pare adatto: stai guardando
l'uscita di un comando, non c'è un canale di comunicazione attravero il
quale passano informazioni
Secondo, "in base al tempo universale" dovrebbe essere invece "secondo
il tempo universale" o qualcosa del genere, ma la mia versione è molto
più succinta e mi pare che dia la stessa informaizone.
--
http://savannah.gnu.org/projects/www-it/
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], (continued)
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Marco Calegaro, 2016/08/20
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Francesco Potortì, 2016/08/20
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Marco C., 2016/08/24
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Enrico Bella, 2016/08/24
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Marco C., 2016/08/24
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Francesco Potortì, 2016/08/24
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Francesco Potortì, 2016/08/24
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Marco C., 2016/08/25
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Francesco Potortì, 2016/08/29
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale],
Marco C. <=
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Francesco Potortì, 2016/08/24
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Marco C., 2016/08/24
- Re: [www-it-traduzioni] Introduzione alla riga di comando [Sintassi Iniziale], Francesco Potortì, 2016/08/24