GNU/Linux >> Linux Esercitazione >  >> Linux

Come conoscere l'ora corrente da Internet dalla riga di comando in Linux?

Se usi bash, la riga seguente farà il lavoro

$ cat </dev/tcp/time.nist.gov/13

56525 13-08-21 23:07:09 50 0 0  55.6 UTC(NIST) *

Sfrutta le funzionalità di rete integrate¹ della shell bash. Se usi una shell POSIX o qualsiasi altra shell puoi usare ad es. netcat.

$ nc time.nist.gov 13

56525 13-08-21 23:07:09 50 0 0  55.6 UTC(NIST) *

Entrambi i comandi interrogano il timer server sulla porta TCP 13 del National Institute of Standards and Technology e restituiscono i dati ricevuti su stdout.

¹MODIFICA: Dalla pagina man di Bash:Bash gestisce diversi nomi di file specialmente quando vengono usati nei reindirizzamenti, come descritto nella tabella seguente:

/dev/tcp/host/port
Se host è un nome host o un indirizzo Internet valido e port è un numero di porta intero o nome del servizio, bash tenta di aprire una connessione TCP al socket corrispondente.

/dev/udp/host/port
Se host è un nome host o un indirizzo Internet valido e port è un numero di porta intero o nome del servizio, bash tenta di aprire una connessione UDP al socket corrispondente.


Sono disponibili diversi servizi NTP per distribuzione.

Se desideri eseguire una sincronizzazione dell'orologio una sola volta :

date -s "$(curl -s --head http://google.com | grep ^Date: | sed 's/Date: //g')"

Imposta l'ora di sistema sull'orologio in tempo reale dell'hardware

hwclock -r --utc
hwclock -w --utc
hwclock -r --utc

(Nota:questo sembra funzionare bene con Google perché ha server ovunque)

Se desideri solo vedere a che ora invia il server di Google più vicino:

date -d "$(curl -s --head http://google.com | grep ^Date: | sed 's/Date: //g')"

Il ntpdate il comando può farlo con il -q bandiera:

$ ntpdate -q 1.debian.pool.ntp.org
server 88.191.120.99, stratum 3, offset -0.015076, delay 0.06604
server 88.191.235.218, stratum 2, offset -0.000676, delay 0.06592
server 188.165.240.21, stratum 3, offset 0.001191, delay 0.07005
server 91.121.34.166, stratum 2, offset 0.000565, delay 0.06998
22 Aug 00:56:21 ntpdate[31373]: adjust time server 88.191.235.218 offset -0.000676 sec

Da man ntpdate :

   -q     Query only - don't set the clock.

Linux
  1. Come installare il software dalla riga di comando di Linux

  2. Come eliminare file e directory in Linux dalla riga di comando

  3. Come dividere e combinare file dalla riga di comando in Linux

  4. Migrazione di un server Linux dalla riga di comando

  5. Come posso copiare una cartella dalla riga di comando di Linux?

Come acquisire schermate dalla riga di comando utilizzando "Scrot" in Linux

Come scoprire l'indirizzo IP pubblico dalla riga di comando su Linux

Come regolare la luminosità del monitor dalla riga di comando in Linux

Come cercare file dalla riga di comando di Linux

Rimuovi directory in Linux - Come eliminare una cartella dalla riga di comando

Come controllare le statistiche di rete Linux dalla riga di comando