Jak pracować z datą i godziną w Bash za pomocą polecenia daty
 
                - 3927
- 797
- Ignacy Modzelewski
Polecenie daty to zewnętrzny program Bash, który pozwala ustawić lub wyświetlać datę i godzinę systemu. Zapewnia również kilka opcji formatowania. Polecenie daty jest domyślnie zainstalowane we wszystkich dystrybucjach Linux.
$ data $ typ -a data
 Znajdź lokalizację polecenia daty
 Znajdź lokalizację polecenia daty Typ polecenie daty w terminalu, który wyświetli bieżącą datę i godzinę.
$ data
 Sprawdź datę w Linux
 Sprawdź datę w Linux Zmień datę i godzinę systemu Linux
Za pomocą polecenie daty, Data systemu, czas i strefa czasowa można zmodyfikować, a zmiana musi zostać zsynchronizowana z zegariem sprzętowym.
$ data -set = "czw 12 listopada 13:06:59 IST 2020" $ HWCLOCK -SOSTOHC
 Ustaw datę i godzinę systemu Linux
 Ustaw datę i godzinę systemu Linux Opcje formatowania
Dobrym miejscem na uzyskanie listy opcji formatowania będzie strona Man.
$ Man Data
Zobaczmy niektóre z najczęstszych opcji formatowania, których będziemy korzystać.
- Aby zastosować użycie formatowania ”+ śledzony przez "formatter".
- Aby uzyskać listę opcji formatowania dla GNU \ Linux, spójrz na stronę Linked Man.
- Aby uzyskać listę opcji formatowania dla BSD, spójrz na stronę Linked Man.
Dwie ważne części polecenie daty używa formatu +% i opcja -data.
Teraz zastosujmy formatowanie na polecenie daty. Aby zastosować formatowanie, dodaj plus znak (+) śledzony przez %formattera Jak pokazano w przykładach.
Data obsługi w Linux
Rzućmy okiem, jak korzystać z formatterów związanych z datą w prostym skrypcie powłoki o nazwie 'data.cii'.
# Drukuj rok, miesiąc, dzień i data… echo „Jesteśmy w roku = $ (data + %y)„ echo ”jesteśmy w roku = $ (data + %y)” # różnica między %y a %y jest %y wydrukuje 4 cyfry, a %y wydrukuje ostatnie 2 cyfry roku. echo "Jesteśmy w miesiącu = $ (data +%m)" echo "Jesteśmy w miesiącu = $ (data +%b)" echo "Jesteśmy w miesiącu = $ (data +%b)" # różnica Między %B a %B jest, %B wydrukuje nazwę całego miesiąca, podczas gdy %B wydrukuje skróconą nazwę miesiąca. echo „bieżący dzień miesiąca = $ (data +%d)„ echo ”bieżący dzień tygodnia = $ (data +%a)„ echo ”bieżący dzień tygodnia = $ (data +%a)" # różnica Między %a a %a jest, %a wydrukuje pełną nazwę w dni powszednie, podczas gdy %a wydrukuje skróconą nazwę w dni powszednie. # Zamiast formatowania, aby uzyskać datę, możemy użyć %d, który wydrukuje datę jako %m/ %d/ %y lub %f, który drukuje w %y- %m- %D format. echo „Data za pomocą %d = $ (data + %d)„ echo ”data za pomocą %f = $ (data + %f)”
 Znajdź datę i godzinę za pomocą skryptu
 Znajdź datę i godzinę za pomocą skryptu Czas obsługi w Linux
Rzućmy okiem na użycie czas Powiązane formatory w prostym skrypcie powłoki o nazwie 'czas.cii'.
# Godziny drukowania, mins, sekundy, nano sekundy Godziny echa = $ (data +%h) Minuty echa = $ (data +%m) echo sekundy = $ (data +%s) nanosekund echo = $ (data +%n) epok czas epoki = $ (data +%s) echo "aktualny czas = $ (data +%h:%m:%s:%n)" # może również użyć%t, który wyświetla czas w HH: MM: SS Format. Echo „Obecny czas w 24 -godzinnym formacie = $ (data + %t)” # może również użyć %R do wyświetlania czasu w formacie 12 -godzinnym. Echo „Obecny czas w 12 -godzinnym formacie = $ (data +%r)”
 Znajdź czas w Linux za pomocą skryptu
 Znajdź czas w Linux za pomocą skryptu Z -data lub -d flaga
Z --data Lub -D Wejście flagi można przekazać jako ciąg i polecenie daty wie, aby sobie z tym poradzić.
Zobaczmy kilka przykładów, aby zrozumieć, jak to działa.
# Wydrukuj wczorajszą datę i godzinę. echo „wczoraj = $ (data -d„ wczoraj ”)” # Wydrukuj jutro datę i godzinę. echo „jutro = $ (data -d„ jutro ”)” # Znajdź datę i godzinę przed 10 dniami. echo „przed 10 dni = $ (data -d„ jutro -10 dni ”)” # Znajdź ostatni miesiąc i następny miesiąc echo w zeszłym miesiącu = $ (data -d „w zeszłym miesiącu” „%b”) „echo” w przyszłym miesiącu = $ (data -d „następny miesiąc” „%b”) ” # Znajdź w zeszłym roku i w przyszłym roku echo„ w zeszłym roku = $ (data -d „w zeszłym roku” „+%y”) „echo” w przyszłym roku = $ = $ )? = $ (data -d „Today +2 dni” „ +%a”)
 Sprawdź datę za pomocą formatowania
 Sprawdź datę za pomocą formatowania Wspólne operacje
obliczyć liczbę dni między 2 danymi datami.
$ echo $ ((($ (data -d „2020-11-10” „+%s”)-$ (data -d „2020-11-01” „+%s”)) / 86400)))
Znajdź dany rok to rok skokowy, czy nie.
$ za y w 2000… 2020; do daty -d $ y-02-29 &>/dev/null && echo $ y to rok skokowy; zrobione
 Znajdź rok LEAP w Linux
 Znajdź rok LEAP w Linux Przypisanie wyjścia polecenia daty do zmiennej.
$ Dziś = $ (data +%y-%m-%d) lub $ Today1 = $ (data +%f) $ echo $ dziś $ echo Today1
 Przypisz datę do zmiennej
 Przypisz datę do zmiennej Utwórz pliki dziennika z datą dodaną do nazwy pliku.
Dodanie daty i godziny podczas tworzenia plików dziennika, kopii zapasowej lub plików tekstowych jest powszechną operacją, którą najczęściej się spotykamy. Weźmy przykład, aby wziąć kopię zapasową, stworzyliśmy skrypt powłoki.
Ten skrypt odbędzie kopię zapasową z 00:00 do 23:59 i zaplanowany będzie codziennie o 00:00 następnego dnia. Chcemy tworzyć pliki dziennika z wczorajszym formatem daty.
Custom_format = $ (data-date "wczoraj" "+%d-%y-%h:%m") log_file =/var/log/custom_application/Application _ $ Custom_format.log echo "Skrypt uruchomiono" >> $ log_file… bloki kodu… echo "Skrypt wypełniony" >> $ log_file
To wszystko dla tego artykułu. W tym artykule widzieliśmy, jak korzystać z daty i godziny Bash w Linux. Daj nam znać swoją opinię.
- « Jak utworzyć lokalny certyfikat SSL w CentOS 8
- Zeit - narzędzie GUI do planowania CRON i na zadaniach w Linux »
 
                    