Android

Linux-datumkommando med exempel

How to use tabs for autocompletion: 2-Minute Linux Tips

How to use tabs for autocompletion: 2-Minute Linux Tips

Innehållsförteckning:

Anonim

Datumkommandot visar eller ställer in systemdatumet. Det används oftast för att skriva ut datum och tid i olika format och beräkna framtida och tidigare datum.

I den här handledningen täcker vi grunderna för datumkommandot.

Använda Linux-datumkommandot

Syntaxen för datumkommandot är följande:

date…

För att visa det aktuella systemtid och datum med standardformatering, åberopa kommandot utan några alternativ:

date

Utgången kommer att inkludera veckodag, månad, månad i dag, tid, tidszon och år:

Sat Jun 1 14:31:01 CEST 2019

Datumformatalternativ

Utgången från date kan formateras med en sekvens av formatkontrolltecken som föregås av ett + -tecken. Formatkontrollerna börjar med symbolen % och ersätts av deras värden.

date +"Year: %Y, Month: %m, Day: %d"

Tecknet %Y kommer att ersättas med året, %m med månad och %d med månad i månaden:

Year: 2019, Month: 06, Day: 02

Här är ett annat exempel:

date "+DATE: %D%nTIME: %T"

DATE: 06/02/19 TIME: 01:47:04

Nedan finns en liten lista över några av de vanligaste formateringstecken:

  • %a - Landets förkortade korta veckodagsnamn (t.ex. mån) %A - Landets förkortade fullständiga veckodagsnamn (t.ex. måndag) %b - Landets förkortade kortmånadersnamn (t.ex. jan) %B - Landets förkortade namn på lång månad (t.ex. januari) %d - Månadens dag (t.ex. 01) %H - Hour (00..23) %I - Hour (01..12) %j - Day of year (001..366) %m - Månad (01..12) %M - minut (00., 59) %S - andra (00..60) %u - Veckodag (1..7) %Y - Helår (t.ex. 2019)

För att få en fullständig lista över alla formateringsalternativ, kör date --help eller man date i din terminal.

Date String

Alternativet -d låter dig arbeta på ett specifikt datum. Du kan ange datumet som en mänsklig läsbar datumsträng som nedan:

date -d "2010-02-07 12:10:53"

Sun Feb 7 12:10:53 CET 2010

Använda den anpassade formateringen:

date -d '16 Dec 1974' +'%A, %d %B %Y'

Monday, 16 December 1974

Datumsträngen kan också acceptera värden som "imorgon", "fredag", "sista fredag" "nästa fredag", "nästa månad", "nästa vecka".. osv.

date -d "last week"

Sat May 25 14:31:42 CEST 2019

Du kan också använda alternativet för datumsträng för att visa din lokala tid för olika tidszoner. Om du till exempel vill visa lokal tid klockan 06:30 nästa måndag på den australiska östkusten skriver du:

date -d 'TZ="Australia/Sydney" 06:30 next Monday'

Sun Jun 2 22:30:00 CEST 2019

Överstyr tidszonen

Datumkommandot använder systemets tidszon. För att använda en annan tidszon, ställ in miljövariabeln TZ till önskad tidszon.

För att exempelvis visa tiden Melbourne, skriver du:

TZ='Australia/Melbourne' date

Sat Jun 1 22:35:10 AEST 2019

Om du vill lista alla tillgängliga tidszoner kan du antingen lista filerna i /usr/share/zoneinfo eller använda timedatectl list-timezones .

Epokomvandlare

Datumkommandot kan användas som en Epok-omvandlare. Epoch eller Unix-tidsstämplar är antalet sekunder som har gått sedan 1 januari 1970 klockan 00:00:00 UTC.

För att skriva ut antalet sekunder från epok till aktuell dag använd %s formatkontroll:

date +%s

1559393792

För att konvertera sekunder sedan epoken till datum ställer du in sekunderna som en datumsträng förinställd med @ :

date -d @1234567890

Sat Feb 14 00:31:30 CET 2009

Använda datum med andra kommandon

Datumkommandot används oftast för att skapa filnamn som innehåller aktuell tid och datum.

Kommandot nedan skapar en Mysql-backupfil i följande format database_name-20190601.sql

mysqldump database_name > database_name-$(date +%Y%m%d).sql

Du kan också använda datumkommandot i dina skalskript. I exemplet nedan tilldelar vi utgången från date till variabeln date_now :

date_now=$(date "+%F-%H-%M-%S") echo $date_now

2019-06-01-15-02-27

Visa den senaste ändringstiden för en fil

Datumkommandot med -r alternativet visar den senaste ändringstiden för en fil. Till exempel:

date -r /etc/hosts

Tue Jul 24 11:11:48 CEST 2018

Ställ in systemtid och datum

Att ange systemtid och datum manuellt med date rekommenderas vanligtvis inte eftersom systemklockan är synkroniserad med de flesta Linux-distributioner med hjälp av ntp eller systemd-timesyncd tjänsterna.

Men om du vill ställa in systemklockan manuellt kan du använda alternativet - --set= . Om du till exempel vill ställa in datum och tid på 17:30, 01 juni 2019, skriver du:

date --set="20190601 17:30"

Slutsats

Nu bör du ha en god förståelse för hur du använder Linux-datumkommandot.

datum terminal