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 znaku | Wyjście |
---|---|
%H | Godzina (00-24) |
%I | Godzina (01-12) |
%M | Minuta (00-59) |
%S | Drugi (00-60) |
%P | Rano albo wieczorem |
%DO | Pełna nazwa dnia tygodnia (np. niedziela) |
%do | Skrócona nazwa dnia tygodnia (np. Sun) |
%w | Numer dnia tygodnia (0-6) |
%D | Dzień miesiąca (01-31) |
%J | Dzień roku (001-366) |
% B | Pełna nazwa miesiąca (np. styczeń) |
% b | Skrócona nazwa miesiąca (np. Jan) |
%m | Numer 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 atimeChcesz 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ą internetuCzytaj dalej Powiązane tematy
- Linux
- Polecenia Linuksa
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 GlooraZapisz 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ć