BASH DATE Eksempler

BASH DATE Eksempler
Bash bruker 'Dato'Kommando for å vise eller endre gjeldende dato og tidsverdi for systemet. Dato og tidsverdi kan skrives ut i forskjellige formater ved å bruke denne kommandoen. Denne kommandoen kan også brukes til beregning av dato- og tidsverdi -relaterte oppgaver. 'Dato' -kommando uten noe alternativ bare skriver ut det nåværende systemets dato og tidsverdi. Denne kommandoen har mange formateringsalternativer for å formatere utdataene. Bruken av disse alternativene vises i denne opplæringen ved å bruke forskjellige eksempler.

Syntaks:

dato [alternativ]… [+format]
dato [alternativ] [mmddhhmm [[cc] yy] [.ss]]

Ulike formatkoder eller tegn kan brukes med datoalternativer for å generere den formaterte utgangen. Noen vanlige alternativer og formattyper er nevnt nedenfor.

Alternativer:

-d eller -dato =Streng Den viser tiden som er satt av strengverdien.
-s, -set =Streng Det setter tiden som er satt av strengverdien.
-f eller -file =Datefile Det brukes til å behandle flere datoer.
-I eller -iso -8601 [=Timespec] Den brukes til å lage en ISO 8601 kompatibel dato/tid Strengutgang.
-r eller -referanse =Fil Det brukes til å vise den siste modifiseringstiden for en fil.
-u, -utc, -faglig Det brukes til å vise eller stille koordinert universell tid.
-hjelp Det brukes til å få hjelp av denne kommandoen.
-versjon Det brukes til å få versjonsinformasjon.

Noen formatkoder:

%en Skriv ut ukedagsnavn i kort form (e.g., Sol)
%EN Skriv ut hele ukedagsnavn (e.g., Søndag)
%b Skriv ut månedens navn i kort form (e.g., Jan)
%B Skriv ut hele månedens navn (e.g., Januar)
%c Skriv ut dato og klokkeslett (e.g., Man 11. mars 23:05:25 2019)
%C Print Century; som %y, bortsett fra å utelate de to siste sifrene (e.g., 25)
%d Trykkdagen i måneden (e.g, 01)
%Y Skriv ut 4 sifre år (e.g. 2019)
%y Skriv ut 2 sifre år (e.g. 19)
%D Skriv ut dato; Samme som%m/%d/%y
%e Utskriftsdag i måneden, samme som, %d
%F Skriv ut hele datoen; Samme som,%y-%m-%d

Eksempel 1: Display Dato i det aktuelle formatet

Som standard viser "dato" gjeldende dato og tidsverdi. Hver del av dato- og klokkeslettverdier kan skrives ut separat ved å bruke forskjellige dataalternativer. Følgende kommando vil bare skrive ut datoverdien.

$ dato +" %dth %b, %y"

Produksjon:

Her brukes '%d' til utskriftsdagsverdi, '%b' brukes til å skrive ut hele månedens navn og '%y' brukes til å skrive ut hele året verdi.

Eksempel-2: Endre gjeldende dato og klokkeslett

Gjeldende dato og tidsverdi kan endres ved å bruke -s alternativ. Du må ha rotprivilegium for å endre systemets dato og tid. Følgende kommando vil endre gjeldende dato til '03/17/2019 'og tiden til '03: 30: 00'.

$ Dato
$ sudo date -s "03/17/2019 03:30:00"
$ Dato

Produksjon:

Eksempel-3: Finn den aktuelle datoen og tiden ved å bruke dager

Noen ganger må vi finne ut fremtiden eller forrige dato og tid. Enhver dato kan finne ut av det ved å bruke "dato" -kommando og definere dager, måned- og årverdier i -dato -alternativet. Følgende kommandoer beregner datoen og klokkeslettet etter 15 dager og før 15 dager.

$ dato -dato = '15 dager '
$ dato -dato = '15 dager siden '

Produksjon:

Eksempel-4: Finn den aktuelle datoen og tiden ved hjelp av tider

Som det forrige eksemplet, kan fremtid eller tidligere tider beregnes ved å bruke 'Dato' -kommando. Følgende kommandoer vil beregne fremtidig tid etter '5 timer 20 minutter' av nåværende tider og før 2 timer og 20 minutters nåværende tider.

$ Dato
$ date -date = '5 timer 20 minutter'
$ Dato
$ date -date = ' -2 timer -20 minutter'

Produksjon:

Eksempel-5: Konverter gjeldende dato og tid til Unix Epoch Time

I henhold til UNIX Epoch Time beregnes tidsverdien i sekunder fra datoen, 1st Januar 1971. Denne tidsverdien kan brukes til å beregne tidsforskjellen. 'Dato' -kommando kan brukes til å konvertere hvilken som helst datoverdi til Unix -epokid. Følgende kommando vil konvertere gjeldende systemdato og klokkeslett til Unix Epoch Time.

$ dato +%s

Produksjon:

Eksempel-6: Konverter UNIX Epoch Tid til dags dato og klokkeslett

Ved å bruke 'Dato' -kommando kan alle konvertere hvilken. Følgende kommando konverterer '1552298500' epokeverdi til den tilsvarende dato og tidsverdi.

$ date -d @1552208500

Produksjon:

Eksempel-7: Finn ut ukedagen basert på dato

'Dato' -kommando kan brukes til å finne ut ukedagens navn, månedens navn eller årverdi fra hvilken som helst datoverdi. Følgende kommando vil finne ukedagsnavnet til 1st Januar 2019 og utgangen er 'tirsdag'.

$ date -d "2019-01-01" +"%a"

Produksjon:

Eksempel-8: Bruke datakommando i et bash-skript

En bash -fil som heter TIMEDIFF.sh opprettes med følgende kode. I dette skriptet er to datoverdier hentet fra kommandolinjeargumenter som er lagret på $ 1 og $ 2. $ Startvariabel lagret Unix Epoch Time Value of $ 1 og $ End Variable lagret Unix Epoch Time Value of $ 2. Forskjellen mellom disse to verdiene beregnes og lagres til $ diff -variabel i sekunder. Deretter konverteres sekundene til dager og skrevet ut.

TIMEDIFF.sh

#!/bin/bash
Start = 'date -d $ 1 +%s'
Slutt = 'Dato -D $ 2 +%S'
((diff = $ slutt- $ start))
((dager = $ diff/(60*60*24)))
ekko "Tiden slapp unna = $ dager"

Skriptet utføres med to datoverdier som kommandolinjeargumenter. Her, 2019-01-01 og 2020-01-01 Datoer brukes og forskjellen mellom disse to datoene er 365 dager.

$ Bash Timediff.SH "2019-01-01" "2020-01-01"

Konklusjon

Du kan bruke 'Dato' -kommando for forskjellige formål i bash -skriptet. Noen bruksområder for datoverdier blir forklart i denne opplæringen med eksemplene ovenfor. Du kan også bruke denne kommandoen for å skille tidsverdien ved å bruke forskjellige alternativer og formater. Håper, denne opplæringen vil hjelpe leserne til å forstå bruken av 'date' -kommando og bruke dem riktig.