Jak poznać aktualny czas z Internetu z wiersza poleceń w systemie Linux?
Na przykład z ntpq
programem?
Uwaga: nie z zegara komputera lub systemu operacyjnego, ale z Internetu?
Uwaga: nie chcę ZMIENIAĆ ani synchronizować czasu. POZNAJ to.
linux
command-line
ntp
Przyciemnia
źródło
źródło
Odpowiedzi:
Jeśli użyjesz bash, następujący wiersz wykona zadanie
Wykorzystuje wbudowane możliwości sieciowe¹ powłoki bash. Jeśli używasz powłoki POSIX lub innej powłoki, możesz użyć np . Netcat.
Oba polecenia odpytują serwer timera na porcie TCP 13 Narodowego Instytutu Standardów i Technologii i wysyłają otrzymane dane na standardowe wyjście.
¹ EDYCJA: Ze strony podręcznika użytkownika Bash: Bash obsługuje wiele nazw plików, szczególnie gdy są one używane w przekierowaniach, jak opisano w poniższej tabeli:
źródło
</dev/tcp/
formatcurl -G --data-urlencode "format=%D-%T\n" http://www.timeapi.org/cet/now?
Istnieje kilka usług NTP dostępnych dla każdej dystrybucji.
Jeśli chcesz zrobić synchronizację czasową :
Ustaw czas systemowy na sprzętowy zegar czasu rzeczywistego
(Uwaga: tak się dzieje, że działa dobrze z Google, ponieważ mają one wszystkie serwery)
Jeśli chcesz zobaczyć, o której godzinie najbliższy serwer Google wysyła:
źródło
ntpdate
Komenda może to zrobić z-q
flagą:Od
man ntpdate
:źródło
Możesz również uzyskać czas przez Internet za pomocą protokołu HTTP za pomocą protokołu HTP, który jest dostępny w wielu systemach, ponieważ
htpdate
zwykle ma dokładność z dokładnością do najbliższej sekundy, lub możesz go uzyskać za pomocą protokołu TLS,tlsdate
który może zapewnić lepszą dokładność:Ponieważ ntpdate jest przestarzałe, możesz go użyć
sntp
(jest on instalowany domyślnie na MacOS i wchodzi w skład dystrybucji ntp), aby uzyskać dokładniejszą datę:źródło