9 Praktycznych przykładów polecenia daty w Linuksie

9 Praktycznych przykładów polecenia daty w Linuksie

Poznaj polecenie daty w systemie Linux. Nie, to nie może sprawić ci romantycznego wieczoru. Ale może sformatować datę u góry listu miłosnego, który napisałeś w terminalu. Wystarczająco blisko? Zacznijmy.





Kiedy piszesz skrypty w Bash, nieuchronnie będziesz musiał wydrukować datę lub godzinę, a ta data lub godzina często będzie musiała mieć określony format, aby spełnić wymagania innych funkcji. Wtedy w grę wchodzi polecenie daty.





Jak zobaczysz, polecenie date w Linuksie jest zarówno proste, jak i wszechstronne, co oznacza, że ​​akceptuje wszystkie rodzaje danych wejściowych i generuje daty w wielu formatach. Posiada również inne specjalne funkcje do różnych zadań obliczeniowych związanych z czasem. Poznanie opcji i składni daty z pewnością sprawi, że będziesz bardziej biegły w pisaniu skryptów i być może bardziej punktualny.





Podstawowa składnia polecenia daty

Podstawowa składnia polecenia date jest następująca:

date [OPTION]... [+FORMAT]

Oznacza to, że po wejściu Data , możesz wpisać opcję, na przykład -D lub -s , aby wywołać konkretną funkcję, którą wyjaśnimy poniżej.



Możesz również uzupełnić je za pomocą ciągów formatujących, które zawsze zaczynają się od a + postać. Te ciągi przyjmują określone znaki formatowania, również wymienione poniżej, aby zdefiniować dane wyjściowe.

Praktyczne przykłady poleceń dotyczących daty w systemie Linux

Możesz użyć komendy date na kilka sposobów. Rozważmy najczęstsze i najbardziej przydatne przypadki użycia tego samego.





1. Uzyskaj aktualną datę i godzinę

Bieżącą lokalną datę i godzinę można uzyskać w formacie domyślnym, przekazując samodzielnie polecenie date.

$ date
Mon 19 Apr 2021 12:41:17 PM CDT

Jak widać, data podaje odpowiednie informacje o dacie i godzinie w prostym i przewidywalnym formacie.





2. Uzyskaj przeszłą lub przyszłą datę

Załóżmy, że w swoim skrypcie musisz obliczyć godzinę i datę, która przypada dokładnie za tydzień od teraz. Polecenie daty Cię ochroni. Wydaj to polecenie, korzystając z -D możliwość uzyskania szczegółowych informacji dotyczących przyszłych dat:

$ date -d 'next week'
Tue 27 Apr 2021 05:21:07 PM CDT

ten -D Opcja, skrót od date, to miejsce, w którym polecenie date naprawdę świeci. Akceptuje różne niestandardowe ciągi dat; mogą być techniczne, jak 20200315 , 15.03.20 lub czytelny jak 15 mar 2020 . Ale możesz też używać terminów względnych, takich jak jutro , wczoraj , w przyszłą niedzielę , i więcej. Pobaw się nim i zobacz, jak data interpretuje różne ciągi wejściowe.

3. Sformatuj datę

Być może zauważyłeś w poprzednich dwóch przykładach, że data ma domyślnie określony format czasu. A co, jeśli potrzebujesz go w innym formacie?

Możesz sformatować swoje wyjście podobnie do polecenie printf . Na przykład możesz wydrukować bieżący rok za pomocą tego polecenia:

co to jest bixby na moim telefonie?
date +'Year: %Y'

ten + sygnalizuje, że chcesz mieć sformatowany ciąg i wszystko, co pojawi się później wewnątrz cytat znaczniki, data przetworzy i sformatuje dane wyjściowe.

Oto lista znaków formatowania, których najprawdopodobniej użyjesz:

Formatowanie znakuWyjście
%HGodzina (00-24)
%IGodzina (01-12)
%MMinuta (00-59)
%SDrugi (00-60)
%PRano albo wieczorem
%DOPełna nazwa dnia tygodnia (np. niedziela)
%doSkrócona nazwa dnia tygodnia (np. Sun)
%wNumer dnia tygodnia (0-6)
%DDzień miesiąca (01-31)
%JDzień roku (001-366)
% BPełna nazwa miesiąca (np. styczeń)
% bSkrócona nazwa miesiąca (np. Jan)
%mNumer miesiąca (01-12)

Możesz uzyskać pełną listę znaków formatowania za pomocą --Wsparcie opcja w terminalu.

date --help

4. Zdobądź dzień tygodnia

Jednym z bardzo powszechnych i praktycznych zastosowań formatowania daty jest pobieranie dnia tygodnia dla dowolnej daty. Na przykład, aby sprawdzić, w który dzień tygodnia wypadł 4 listopada 1995 r., wpisz polecenie podobne do tego:

$ date -d '1996-04-11' +'%A'
Friday

ten -D opcja wskazuje, że chcesz konkretną datę, „11.04.1996” ciąg wskazuje, którą datę chcesz, a + '% A' formatowanie wskazuje, że chcesz, aby w danych wyjściowych był dzień tygodnia. Pamiętaj, że ciąg daty może mieć wiele formatów, nie tylko ten określony tutaj.

5. Uzyskaj skoordynowany czas uniwersalny

Wydając -u flaga, możesz uzyskać aktualny czas w uniwersalnym czasie koordynowanym (UTC).

$ date -u
Wed 21 Apr 2021 12:46:59 PM UTC

6. Podaj czas lokalny w innej strefie czasowej

Jeśli chcesz uzyskać datę w innej strefie czasowej, możesz to zrobić, ustawiając TZ = zmienna środowiskowa przed poleceniem date.

Na przykład możesz zobaczyć bieżącą datę i godzinę w Mountain Standard Time (MST) za pomocą następującego polecenia:

$ TZ=MST date
Tue 20 Apr 2021 03:45:29 PM MST

Do swoich celów po prostu wymień MST z inicjałami dowolnej strefy czasowej. Możesz także zdecydować się na użycie notacji UTC. Na przykład, aby uzyskać tę samą strefę czasową, zamień MST z UTC+7 .

Ponadto możesz nazwać kontynent i główne miasto, aby uzyskać czas lokalny danego miasta. Na przykład:

$ TZ=America/Phoenix date
Tue 20 Apr 2021 03:45:29 PM MST

7. Uzyskaj czas ostatniej modyfikacji pliku

Jeśli na przykład tworzysz kopie zapasowe, często będziesz musiał uzyskać datę ostatniej modyfikacji pliku. Możesz to zrobić, przekazując -r opcja i nazwanie pliku.

$ date -r /etc/shadow
Wed 14 Apr 2021 07:53:02 AM CDT

Możesz zmienić znaczniki czasu pliku za pomocą komenda touch w Linuksie także.

8. Wyjście i konwersja czasu epoki

Możesz obliczyć liczbę sekund od epoka Uniksa za pomocą następującego polecenia:

$ date +%s
1618955631

Możesz także odwrócić proces i przekonwertować czas uniksowy na format czytelny dla człowieka za pomocą -D opcja i @ postać.

$ date -d @1618955631
Tue 20 Apr 2021 04:53:51 PM CDT

Obliczanie czasu uniksowego jest przydatne, jeśli potrzebujesz dokładnej sekundy, która z pewnością zapewni synchronizację innych urządzeń.

9. Tymczasowo ustaw czas systemowy

Możesz zmienić swój zegar systemowy z terminala za pomocą polecenia date, przekazując -s argument, po którym następuje żądany czas. Na przykład możesz ustawić zegar systemowy na 24 godziny w przyszłości za pomocą następującego polecenia:

date -s 'tomorrow'

Pamiętaj, że aby przekazać to polecenie, potrzebujesz uprawnień sudo. Ponadto zmiana prawdopodobnie nie będzie trwała (co oznacza, że ​​po ponownym uruchomieniu Twój zegar powróci do poprzedniego stanu), ponieważ większość dystrybucji używa innych narzędzi do zarządzania zegarem systemowym, które zastąpią zmianę podczas uruchamiania.

Objaśnienie polecenia daty w systemie Linux

Jak w życiu, w Linuksie nie można uciec od czasu. Dlatego ważne jest, abyś zrozumiał, jak go formatować i używać za pomocą polecenia date. Jedną z rzeczy, które na pewno napotkasz w zarządzaniu plikami w systemie Linux, są różne sygnatury czasowe, które noszą ze sobą pliki.

Udział Udział Ćwierkać E-mail Zrozumienie znaczników czasu plików systemu Linux: mtime, ctime i atime

Chcesz dowiedzieć się więcej o tym, jak Linux śledzi zmiany w pliku? Oto, co musisz wiedzieć o znacznikach czasu plików systemu Linux.

darmowe gry, które nie wymagają internetu
Czytaj dalej Powiązane tematy
  • Linux
  • Polecenia Linuksa
O autorze Jordan Gloor(51 opublikowanych artykułów)

Jordan jest pisarzem personelu w MUO, którego pasją jest uczynienie Linuksa dostępnym i bezstresowym dla każdego. Pisze również poradniki dotyczące prywatności i produktywności.

Więcej od Jordana Gloora

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Kliknij tutaj, aby zasubskrybować