Bourne Again Shell znany również jako Grzmotnąć zawiera różne narzędzia wiersza poleceń do manipulowania i automatyzowania zadań. Jednym z takich narzędzi jest data polecenie, które służy do pobierania daty/godziny i manipulowania nim. Używając data polecenie, możesz także uzyskać wczorajszą datę, aby użyć jej w skryptach Bash.
Uzyskanie wczorajszej daty może być przydatne do generowania raportów, zarządzania danymi i planowania zadań.
W tym samouczku omówię, jak używać polecenia date, aby uzyskać wczorajszą datę w Bash.
Co to jest polecenie daty Bash
Jak znaleźć wczorajszą datę w Bash na Linuksie
1. Znajdowanie wczorajszej daty przy użyciu opcji -d lub –date
Znajdowanie wczorajszej daty za pomocą SEKUND EPOCH
Jak znaleźć wczorajszą datę w Bash na macOS
Wniosek
Co to jest polecenie daty Bash
Polecenie date w Bash wyświetla datę i godzinę w terminalu. Można go również używać do ustawiania, zmiany lub drukowania daty i godziny w różnych formatach. Polecenie date jest bardzo przydatne do automatyzacji i planowania zadań w skryptach Bash.
Aby uzyskać aktualną datę i godzinę, po prostu wpisz data w terminalu:
data
Aby uzyskać datę w formacie RRRR-MM-DD, użyj następującego polecenia:
W powyższym poleceniu zamiast ukośników (/) możesz użyć myślników (-).
Poniżej wymieniono często używane znaki sterujące formatem:
%D | Wyświetla dzień miesiąca; na przykład: 02 lub 03. |
%D | Wyświetla datę w formacie miesiąc-dzień-rok. |
%M | Wyświetla miesiąc; na przykład: 01-12 |
%W | Wyświetla dzień tygodnia: na przykład: 1-7. 1 to poniedziałek, 4 to czwartek. |
%W | Wyświetla numer tygodnia w roku. Na przykład 00-53, 00 to pierwszy tydzień roku, 01 to drugi tydzień roku. |
%J | Wyświetla dzień roku; na przykład 001 to pierwszy dzień roku, 366 to ostatni dzień. |
Aby uzyskać więcej informacji, wykonaj następujące polecenie, aby uzyskać dostęp do strony podręcznika polecenia date:
Człowiek data
Kolejna ważna opcja dostępna w pakiecie data polecenie jest -D Lub - -data . Korzystając z tych opcji, możemy uzyskać daty wcześniejsze, przyszłe, a nawet wczorajsze. Opcje te służą do wyświetlania czasu podanego w postaci ciągów znaków. Na przykład:
Lub:
Poniżej wymieniono inne ciągi, które mogą zaakceptować opcje -d lub – –date:
-
- jutro
- Wczoraj
- Ostatnia sobota
- Następna sobota
- zeszły tydzień
- w następnym tygodniu
- ostatni rok
- Następny rok
- X sekund temu
- X dzień temu
- X tydzień temu
- X rok temu
- X dni
- Tydzień X
- rok X
W następnej części skorzystam -D I - -data opcje znalezienia wczorajszej daty.
Jak znaleźć wczorajszą datę w Bash na Linuksie
Aby znaleźć wczorajszą datę w Bash, istnieje wiele sposobów. Omówię każdą metodę:
-
- Znajdowanie wczorajszej daty przy użyciu opcji -d lub – –date
- Znajdowanie wczorajszej daty za pomocą SEKUND EPOCH
Notatka: Znalezienie wczorajszej daty zależy od możliwości systemu w zakresie daty.
1. Znajdowanie wczorajszej daty przy użyciu opcji -d lub ––date
Aby uzyskać wczorajszą datę w Bash, użyj następującego polecenia:
data -D '1 dzień temu'
Albo użyj:
The 1 dzień temu ciąg można również zastąpić -1 dniem.
Datę można także sformatować, korzystając ze znaków formatujących.
Innym sposobem uzyskania wczorajszej daty w bashu jest użycie wczorajszego ciągu znaków z -D Lub - -data opcje.
Aby sformatować go w RRRR/MM/DD, użyj następującego polecenia:
Jakie są ograniczenia opcji -d lub – –date w systemie Linux
Opcje -d lub – –date podają wczorajszą datę, ale te opcje mają pewne ograniczenia. Opcje te nie są brane pod uwagę Czas letni Lub Czas letni podając dane wyjściowe i polegając na bieżącej strefie czasowej. Polecenie date po prostu odejmuje 24 godziny od bieżącej daty i godziny, aby uzyskać wczorajszy wynik, co eliminuje uwzględnianie czasu letniego.
Jednym ze sposobów uniknięcia takiej sytuacji jest użycie UTC (-u flaga) czas, który nie opiera się na lokalnej strefie czasowej przy obliczaniu wczorajszej daty i daje wynik według stałej strefy czasowej. Użyj flagi -u z poleceniem date:
data -W --data 'Wczoraj' + „%Y-%m-%d”
2. Znajdowanie wczorajszej daty za pomocą SEKUND EPOCH
Wczorajszą datę można również znaleźć za pomocą EPOCHSECONDS. Aby znaleźć wczorajszą datę, wykonaj następujące polecenie:
drukuj -W Wczoraj '%(%Y/%m/%d)T' $ ( ( SEKUND EPOKOWYCH – 86400 ) )
Aby wydrukować wczorajszy przebieg daty:
To polecenie oblicza datę poprzedniej daty za pomocą EPOCHSECONDS i przypisuje ją do Wczoraj zmienna w RRRR-MM-DD format. SEKUND EPOCH to liczba sekund od 1 stycznia 1970 r., gdzie 86400 oznacza liczbę sekund na dzień.
Jak znaleźć wczorajszą datę w Bash na macOS
Chociaż w systemie macOS domyślną powłoką jest Zsh, wielu nadal preferuje powszechnie używany Bash. Polecenie date w systemie macOS nie obsługuje Wczoraj składnia, dlatego procedura uzyskiwania wczorajszej daty w systemie macOS jest nieco inna.
W systemie macOS, data polecenie służy do znalezienia wczorajszej daty.
data -v-1d
Aby uzyskać wczorajszą datę w określonym formacie w systemie macOS:
Flaga -v służy do ustawiania godziny i daty; na przykład: jeśli chcesz podać datę poprzedniego dnia, użyj 1 d z minusem ( – ) podpisać. Aby uzyskać datę na następny dzień wystarczy użyć plusa ( + ) podpisać. Tutaj d oznacza dni od 1 do 31. Aby uzyskać więcej informacji, wykonaj następujące polecenie w terminalu bash systemu macOS:
Notatka: Flaga -v jest specyficzna dla systemu macOS i może nie działać w innych systemach operacyjnych, takich jak Linux.
Wniosek
Jako administrator systemu musisz pracować z datą i godziną, aby planować zadania, tworzyć raporty i tworzyć kopie zapasowe danych. Aby uzyskać wczorajszą datę w systemie Linux, możesz użyć polecenia date -D Lub - -data flagi. W systemie macOS używane jest również polecenie date, ale z rozszerzeniem -W flagę i dodatnią lub ujemną liczbę całkowitą D postać.