Udržování přesného data v systému Linux je jednou ze základních dovedností, které by měl mít každý uživatel Linuxu na dosah ruky. Příkaz data v systému Linux se používá k zobrazení a nastavení nastavení data a času v systému Linux. Tento tutoriál vám poskytne pohled na to, jak můžete použít příkaz datum k zobrazení a nastavení data na vašem systému Linux.
Základní syntaxe
Základní syntaxe příkazu date je uvedena níže
$ datum [možnost]… [+formát]
1 ) Příkaz Datum bez možností
Ve své základní podobě, bez jakýchkoliv příkazů, příkaz date zobrazuje vaše aktuální datum a čas včetně dne v týdnu, měsíce, roku, času ve formátu hh:mm:ss a časového pásma, jak je uvedeno níže.
$ date Sun May 9 15:41:17 IST 2021 $
2) Zobrazte datum a čas v UTC
Chcete-li zobrazit čas v UTC (Coordinated Universal Time), dříve označovaném jako GMT (Greenwich Mean Time), přidejte možnost -u.
$ date -u Sun May 9 10:11:59 UTC 2021 $
3 ) Zobrazte konkrétní datum ve formátu řetězce
Konkrétní datum můžete zobrazit ve formátu řetězce pomocí možnosti –date, jak je znázorněno níže. Pamatujte, že to neovlivní datum a čas vašeho systému, ale pouze převede formát data na řetězec.
$ date --date="10/10/2021" Sun Oct 10 00:00:00 IST 2021 $
4) Ke kontrole minulých dat použijte příkaz datum
Příkaz date může také vytisknout datum a čas v minulosti vzhledem k aktuálnímu datu.
Chcete-li například zkontrolovat, jaké bylo datum před 9 dny, spusťte příkaz.
$ date --date="9 days ago" Fri Apr 30 15:45:28 IST 2021 $
Chcete-li zobrazit datum o dva týdny dříve, spusťte příkaz:
$ date --date="2 weeks ago" Sun Apr 25 15:47:11 IST 2021 $
Chcete-li zkontrolovat datum před třemi měsíci, proveďte:
$ date --date="3 months ago" Tue Feb 9 15:47:52 IST 2021 $
Chcete-li vytisknout datum před 3 lety, spusťte:
$ date --date="3 years ago" Wed May 9 15:49:04 IST 2018 $
5) Ke kontrole budoucích dat použijte příkaz datum
Stejně jako můžete zkontrolovat minulá data, příkaz datum vám také umožní zobrazit budoucí data.
Chcete-li například zkontrolovat zítřejší datum spuštění:
$ date --date="tomorrow" Mon May 10 15:50:14 IST 2021 $
Chcete-li zjistit, jaké datum bude přesně za týden, spusťte:
$ date --date="next week" Sun May 16 15:51:03 IST 2021 $
Chcete-li zobrazit datum za dva týdny, proveďte:
$ date --date="2 weeks" Sun May 23 15:51:46 IST 2021 $
Chcete-li zobrazit datum za 4 měsíce, spusťte:
$ date --date="4 months" Thu Sep 9 15:52:33 IST 2021 $
A pro kontrolu data za 2 roky spusťte:
$ date --date="2 years" Tue May 9 15:53:20 IST 2023 $
6) Možnosti formátování data
Příkaz datum je dodáván s mnoha možnostmi, které vám umožňují přizpůsobit výstup data. Níže jsou uvedeny některé z dostupných možností formátování.
- %D – Zobrazení data ve formátu mm/dd/rr
- %Y – rok (např. 2021)
- %m – měsíc (01-12)
- %B – Název měsíce ve formátu celého řetězce (např. únor)
- %b – Název měsíce ve formátu zkráceného řetězce (např. únor)
- %d – den v měsíci (např. 01)
- %j – Den v roce (001-366)
- %u – den v týdnu (1–7)
- %A – Den v týdnu ve formátu celého řetězce (např. pátek)
- %a – Den v týdnu ve zkráceném formátu (např. Pá)
- %H – hodina (00–23)
- %I – hodina (01-12)
- %M – minuta (00-59)
- %S – sekunda (00-60)
Syntaxe pro použití volby data je poměrně jednoduchá:
$ datum “+%možnost”
Chcete-li například vytisknout datum ve formátu rr/mm/dd, spusťte
$ date "+%Y-%m-%m" 2021-05-05 $
Postup tisku dne v týdnu, měsíce, roku a aktuálního času:
$ date "+%A %B %Y %T" Sunday May 2021 15:55:56 $
7) Jak nastavit datum a čas
Příkaz datum také umožňuje nastavit datum a čas. Chcete-li například nastavit datum a čas na 25. června 2021 v 11:15, spusťte příkaz:
$ sudo date --set="20210625 11:15" Fri Jun 25 11:15:00 IST 2021 $
POZNÁMKA:
Nastavení data a času systému tímto způsobem se nedoporučuje, protože čas bude s největší pravděpodobností nepřesný. Lepším způsobem, jak toho dosáhnout, je použít obslužný program chrony, který je náhradou za dnes již zastaralého démona ntpd. Ve skutečnosti moderní systémy jako CentOS 8 / RHEL 8 nepodporují NTP. Máme podrobného průvodce, jak synchronizovat čas a datum pomocí chrony.
V případě, že chcete změnit časové pásmo, použijte příkaz timedatectl, příklad je uveden níže.
$ sudo timedatectl set-timezone Asia/Kolkata
8) Použití příkazu Date v proměnné
Někdy při vytváření skriptu shellu uložíme příkaz data do proměnné a později vytvoříme soubor protokolu pomocí této proměnné, příklady jsou uvedeny níže,
#!/bin/bash LOGFILE=/tmp/logs-$(date +%d-%m-%Y_%T) echo "##Check Cluster for Failed Resources##" >> $LOGFILE crm_mon -1 -rf | grep FAILED >> $LOGFILE echo -e "\n\n" >> $LOGFILE echo "##Check Cluster for Stopped Resources##" >> $LOGFILE crm_mon -1 -rf | grep -i STOPPED >> $LOGFILE echo -e "\n\n" >> $LOGFILE
Shrnutí
Doufáme, že jsme osvětlili použití linuxového příkazu date a věříme, že jej můžete použít k zobrazení data systému a přizpůsobení výstupu podle vašich preferencí.
Přečtěte si také :9 příkladů příkazů tee v Linuxu