Bourne Again Shell også kjent som Bash kommer med ulike kommandolinjeverktøy for å manipulere og automatisere oppgaver. Et slikt verktøy er Dato kommando, som brukes til å hente dato/klokkeslett og manipulere den. Bruker Dato kommando, kan du også få gårsdagens dato for å bruke den i Bash-skript.
Å få gårsdagens dato kan være nyttig for å generere rapporter, databehandling og planlegge oppgaver.
I denne opplæringen vil jeg utforske hvordan du bruker datokommandoen for å få gårsdagens dato i Bash.
Hva er Bash date-kommandoen
Hvordan finne gårsdagens dato i Bash på Linux
1. Finne gårsdagens dato ved hjelp av alternativene -d eller – –dato
Finne gårsdagens dato ved å bruke EPOCHSECONDS
Hvordan finne gårsdagens dato i Bash på macOS
Konklusjon
Hva er Bash date-kommandoen
Dato-kommandoen i Bash viser dato og klokkeslett i terminalen. Den kan også brukes til å angi, endre eller skrive ut dato og klokkeslett i forskjellige formater. Dato-kommandoen er veldig nyttig for å automatisere og planlegge oppgaver i Bash-skripting.
For å få gjeldende dato og klokkeslett, skriv ganske enkelt inn Dato i terminalen:
Dato
For å få datoen i formatet ÅÅÅÅ-MM-DD, bruk følgende kommando:
Du kan bruke bindestreker (-) i stedet for skråstreker (/) i kommandoen ovenfor.
Vanlig brukte formatkontrolltegn er oppført nedenfor:
%d | Viser dagen i måneden; for eksempel: 02 eller 03. |
%D | Viser datoen i måned-dag-år-format. |
%m | Viser måneden; for eksempel: 01-12 |
%i | Viser ukedagen: for eksempel: 1-7. 1 er mandag, 4 er torsdag. |
%I | Viser årets ukenummer. For eksempel, 00-53, 00 er den første uken i året, 01 er den andre uken i året. |
%j | Viser dagen i året; for eksempel er 001 den første dagen i året 366 er den siste dagen. |
For mer informasjon, kjør følgende kommando for å få tilgang til manualsiden til datokommandoen:
Mann Dato
Et annet viktig alternativ som følger med Dato kommandoen er -d eller - -Dato . Ved å bruke disse alternativene kan vi få tidligere datoer, fremtidige datoer og til og med gårsdagens. Disse alternativene brukes til å vise tid gitt i form av strenger. For eksempel:
Eller:
Hva er de andre strengene som -d eller – –date alternativer kan godta, er nevnt nedenfor:
-
- i morgen
- i går
- sist lørdag
- neste lørdag
- forrige uke
- neste uke
- i fjor
- neste år
- X sek siden
- X dag siden
- X uke siden
- X år siden
- X dager
- X uke
- X år
I neste avsnitt vil jeg bruke -d og - -Dato alternativer for å finne gårsdagens dato.
Hvordan finne gårsdagens dato i Bash på Linux
For å finne gårsdagens dato i Bash er det flere måter. Jeg vil diskutere hver metode:
-
- Finne gårsdagens dato ved å bruke -d eller – –dato-alternativer
- Finne gårsdagens dato ved å bruke EPOCHSECONDS
Merk: Å finne gårsdagens dato avhenger av systemets datofunksjoner.
1. Finne gårsdagens dato ved hjelp av alternativene -d eller ––dato
For å få gårsdagens dato i Bash, bruk følgende kommando:
Dato -d '1 dag siden'
Eller bruk:
De 1 dag siden streng kan også erstattes med -1 dag.
Du kan også formatere datoen ved å bruke formattegn.
En annen måte å få gårsdagens dato i bash er å bruke i går-strengen med -d eller - -Dato alternativer.
For å formatere den i ÅÅÅÅ/MM/DD, bruk følgende kommando:
Hva er begrensningene for -d eller – –date-alternativene i Linux
Alternativene -d eller - -dato gir deg gårsdagens dato, men disse alternativene har noen begrensninger. Disse alternativene vurderes ikke Sommertid eller DST mens du gir utdata og stoler på gjeldende tidssone. Datokommandoen trekker ganske enkelt de 24 timene fra gjeldende dato og klokkeslett for å gi gårsdagens utgang, noe som eliminerer sommertid-betraktningen.
En tilnærming for å unngå en slik situasjon er å bruke UTC (-u flagg) tid, som ikke er avhengig av den lokale tidssonen for å beregne gårsdagens dato og gir utdata i henhold til en fast tidssone. Bruk -u-flagget med datokommandoen:
Dato -i --Dato 'i går' + '%Y-%m-%d'
2. Finne gårsdagens dato ved å bruke EPOCHSECONDS
Gårsdagens dato kan også bli funnet ved å bruke EPOCHSECONDS. For å finne gårsdagens dato, utfør følgende kommando:
printf -i i går '%(%Y/%m/%d)T' $ ( ( EPOKSEKUNDER – 86400 ) )
Slik skriver du ut gårsdagens datokjøring:
Denne kommandoen beregner datoen for forrige dato ved å bruke EPOCHSECONDS og tilordner den til i går variabel i ÅÅÅÅ-MM-DD format. EPOKSECONDS er antall sekunder siden 1. januar 1970, der 86400 betyr antall sekunder per dag.
Hvordan finne gårsdagens dato i Bash på macOS
Selv om macOS kommer med Zsh som standard skall, foretrekker mange fortsatt Bash som er mye brukt. Dato-kommandoen i macOS støtter ikke i går syntaks, derfor er prosedyren for å få gårsdagens dato på macOS litt annerledes.
I macOS er Dato kommandoen brukes til å finne gårsdagens dato.
Dato -v-1d
For å få gårsdagens dato i et spesifikt format på macOS, bruk:
-v-flagget brukes til å justere klokkeslett og dato; for eksempel: hvis du vil ha en dato fra forrige dag, bruk 1 d med minus ( – ) tegn. For å få datoen for neste dag, bruk bare pluss ( + ) tegn. Her representerer d dager fra 1-31. For mer informasjon, kjør følgende kommando i macOS bash-terminalen:
Merk: -v-flagget er spesifikt for macOS og fungerer kanskje ikke på andre operativsystemer som Linux.
Konklusjon
Du må jobbe med dato og klokkeslett for å planlegge oppgaver, lage rapporter og sikkerhetskopiere data som systemadministrator. For å få gårsdagens dato i Linux-systemet kan du bruke datokommandoen med -d eller - -Dato flagg. I macOS brukes også datokommandoen, men med en -i flagg og et positivt eller negativt heltall med d karakter.