Cum să găsești data de ieri în Bash

Cum Sa Gasesti Data De Ieri In Bash



Bourne Again Shell cunoscut și ca Bash vine cu diverse utilitare de linie de comandă pentru a manipula și automatiza sarcini. Un astfel de utilitar este Data comanda, care este folosită pentru a obține data/ora și pentru a o manipula. Folosind Data comandă, puteți obține și data de ieri pentru ao utiliza în scripturile Bash.

Obținerea datei de ieri poate fi utilă pentru a genera rapoarte, gestionarea datelor și activități de programare.







În acest tutorial, voi explora cum să folosesc comanda date pentru a obține data de ieri în Bash.



Ce este comanda Bash date
Cum să găsiți data de ieri în Bash pe Linux
1. Găsirea datei de ieri folosind opțiunile -d sau – –date



Găsirea datei de ieri folosind EPOCHSECONDS
Cum să găsiți data de ieri în Bash pe macOS
Concluzie





Ce este comanda Bash date

Comanda date din Bash afișează data și ora în terminal. De asemenea, poate fi folosit pentru a seta, modifica sau tipări data și ora în diferite formate. Comanda date este foarte utilă pentru automatizarea și programarea sarcinilor în scriptingul Bash.

Pentru a obține data și ora curente, introduceți pur și simplu Data in terminal:



Data



Pentru a obține data în format AAAA-LL-ZZ utilizați următoarea comandă:

Data + „%Y/%m/%d”



Puteți folosi liniuțele (-) în locul barelor oblice (/) în comanda de mai sus.

Caracterele de control al formatului utilizate în mod obișnuit sunt enumerate mai jos:

%d Afișează ziua lunii; de exemplu: 02 sau 03.
%D Afișează data în format Lună-Ziu-An.
%m Afișează luna; de exemplu: 01-12
%în Afișează ziua săptămânii: de exemplu: 1-7. 1 este luni, 4 este joi.
%ÎN Afișează numărul săptămânii din an. De exemplu, 00-53, 00 fiind prima săptămână a anului, 01 este a doua săptămână a anului.
%j Afișează ziua anului; de exemplu, 001 este prima zi a anului 366 este ultima zi.

Pentru mai multe detalii, executați următoarea comandă pentru a accesa pagina de manual a comenzii date:

om Data


O altă opțiune importantă care vine cu Data comanda este -d sau - -Data . Folosind aceste opțiuni, putem obține date anterioare, date viitoare și chiar și cele de ieri. Aceste opțiuni sunt folosite pentru a afișa timpul dat sub formă de șiruri. De exemplu:

Data --Data 'ultima sambata'



Sau:

Data -d 'ultima sambata'



Care sunt celelalte șiruri pe care opțiunile -d sau – –date le pot accepta sunt menționate mai jos:

    • Mâine
    • ieri
    • ultima sambata
    • sâmbăta viitoare
    • săptămâna trecută
    • săptămâna viitoare
    • anul trecut
    • anul urmator
    • Acum X secunde
    • Acum X zi
    • Acum X saptamana
    • Acum X an
    • X zile
    • X saptamana
    • X an

În secțiunea următoare, voi folosi -d și - -Data opțiuni pentru a găsi data de ieri.

Cum să găsiți data de ieri în Bash pe Linux

Pentru a găsi data de ieri în Bash, există mai multe moduri. Voi discuta fiecare metodă:

    • Găsirea datei de ieri folosind opțiunile -d sau – –date
    • Găsirea datei de ieri folosind EPOCHSECONDS

Notă: Găsirea datei de ieri depinde de capabilitățile sistemului de date.

1. Găsirea datei de ieri folosind opțiunile -d sau ––date

Pentru a obține data de ieri în Bash, utilizați următoarea comandă:

Data -d 'acum o zi'



Sau folosiți:

Data --Data 'acum o zi'



The acum 1 zi șirul poate fi înlocuit și cu -1 zi.

Data --Data '-1 zi'



De asemenea, puteți formata data folosind caractere de format.

Data --Data 'acum o zi' + „%Y/%m/%d”



O altă modalitate de a obține data de ieri în bash este să folosești șirul de ieri cu -d sau - -Data Opțiuni.

Data --Data 'ieri'



Pentru a-l formata în AAAA/LL/ZZ utilizați următoarea comandă:

Data --Data 'ieri' + „%Y/%m/%d”


Care sunt limitările opțiunilor -d sau – –date în Linux

Opțiunile -d sau – –date vă oferă data de ieri, dar aceste opțiuni au unele limitări. Aceste opțiuni nu iau în considerare Ora de vară sau Ora de oră dând în același timp rezultatul și se bazează pe fusul orar actual. Comanda data scade pur și simplu cele 24 de ore din data și ora curentă pentru a da rezultatul de ieri, ceea ce elimină considerația de ora de oră.

O abordare pentru a evita o astfel de situație este utilizarea UTC (-u flag) ora, care nu se bazează pe fusul orar local pentru a calcula data de ieri și oferă rezultatul conform unui fus orar fix. Folosiți steag-ul -u cu comanda date:

Data -în --Data 'ieri' + „%Y-%m-%d”


2. Găsirea datei de ieri folosind EPOCHSECONDS

Data de ieri poate fi găsită și folosind EPOCHSECONDS. Pentru a găsi data de ieri, executați următoarea comandă:

printf -în ieri „%(%Y/%m/%d)T” $ ( ( EPOCHSECOND - 86400 ) )


Pentru a imprima data de ieri:

ecou $ieri



Această comandă calculează data datei anterioare folosind EPOCHSECONDS și o atribuie ieri variabilă în AAAA-LL-ZZ format. EPOCHSECONDS este numărul de secunde de la 1 ianuarie 1970, unde 86400 înseamnă numărul de secunde pe zi.

Cum să găsiți data de ieri în Bash pe macOS

Deși macOS vine cu Zsh ca shell implicit, mulți încă preferă Bash, care este utilizat pe scară largă. Comanda date în macOS nu acceptă ieri sintaxă, prin urmare procedura de obținere a datei de ieri pe macOS este puțin diferită.

În macOS, Data comanda este folosită pentru a găsi data de ieri.

Data -v-1d



Pentru a obține data de ieri într-un anumit format pe macOS, utilizați:

Data -v-1d + „%Y/%m/%d”



Indicatorul -v este folosit pentru a regla ora și data; de exemplu: dacă doriți o dată din ziua precedentă, utilizați 1 d cu un minus ( ) semn. Pentru a obține data pentru ziua următoare, pur și simplu utilizați plus ( + ) semn. Aici d reprezintă zilele de la 1-31. Pentru mai multe detalii, executați următoarea comandă în terminalul macOS bash:

om Data


Notă: Indicatorul -v este specific pentru macOS și este posibil să nu funcționeze pe alte sisteme de operare, cum ar fi Linux.

Concluzie

Trebuie să lucrați cu data și ora pentru a programa sarcini, a crea rapoarte și a face copii de rezervă ale datelor ca administrator de sistem. Pentru a obține data de ieri în sistemul Linux, puteți folosi comanda date cu -d sau - -Data steaguri. În macOS, se folosește și comanda date, dar cu a -în steag și un întreg pozitiv sau negativ cu d caracter.