9 Praktické příklady příkazu Linux date

9 Praktické příklady příkazu Linux date

Seznamte se s příkazem Linux date. Ne, nemůže vám to zajistit romantický večer. Může však formátovat datum v horní části milostného dopisu, který jste napsali do terminálu. Dost blízko? Začněme.





Při skriptování v Bash budete nevyhnutelně muset vytisknout datum nebo čas a toto datum nebo čas často musí být v určitém formátu, aby byly splněny požadavky dalších funkcí. Tehdy vstupuje do hry příkaz datum.





Jak uvidíte, příkaz datum v Linuxu je jednoduchý a univerzální, což znamená, že bude přijímat všechny druhy vstupů a generovat data v mnoha formátech. Má také další speciální funkce pro různé výpočetní úlohy související s časem. Učení možností a syntaxe data vám určitě umožní být zručnější ve skriptování a možná i přesnější.





Datum Příkaz Základní syntaxe

Základní syntaxe příkazu date je následující:

date [OPTION]... [+FORMAT]

To znamená, že po vstupu datum , můžete zadat možnost, jako -d nebo -s , k vyvolání konkrétní funkce, kterou vysvětlíme níže.



Můžete je také sledovat pomocí formátovacích řetězců, které vždy začínají znakem + charakter. Tyto řetězce vyžadují k definování výstupu konkrétní formátovací znaky, které jsou také uvedeny níže.

Praktické příklady příkazu Linux date

Příkaz date můžete použít k použití několika způsoby. Zvažme nejběžnější a nejužitečnější případy použití.





1. Získejte aktuální datum a čas

Aktuální místní datum a čas můžete získat ve výchozím formátu předáním samotného příkazu date.

$ date
Mon 19 Apr 2021 12:41:17 PM CDT

Jak vidíte, datum vám poskytuje relevantní datum a čas v jednoduchém a předvídatelném formátu.





2. Získejte minulé nebo budoucí datum

Řekněme, že ve vašem skriptu potřebujete vypočítat čas a datum, které je přesně za týden. Příkaz data vás pokryl. Zadejte tento příkaz pomocí příkazu -d možnost získat podrobné informace týkající se budoucích termínů:

$ date -d 'next week'
Tue 27 Apr 2021 05:21:07 PM CDT

The -d možnost, zkratka pro datum, je místo, kde příkaz data skutečně svítí. Přijímá řadu vlastních řetězců data; mohou být technické, jako 20200315 , 15. 3. 20 , nebo čitelné jako 15. března 2020 . Můžete ale také použít relativní výrazy jako zítra , včera , příští neděle , a více. Hrajte si s tím a uvidíte, jak datum interpretuje různé vstupní řetězce.

3. Formátujte datum

Možná jste si v předchozích dvou příkladech všimli, že výchozí datum je velmi specifický formát času. Co když to tedy potřebujete v jiném formátu?

Výstup můžete formátovat podobně jako příkaz printf . Aktuální rok můžete například vytisknout pomocí tohoto příkazu:

vánoční pomoc rodinám s nízkými příjmy
date +'Year: %Y'

The + signály, že chcete formátovaný řetězec, a cokoli, co se poté objeví uvnitř citát značky, datum zpracuje a formátuje výstup.

Zde je seznam formátovacích znaků, které pravděpodobně používáte:

Formátování znakuVýstup
%HHodina (00-24)
%JáHodina (01-12)
%MMinuta (00–59)
%SDruhý (00-60)
%pDopoledne nebo odpoledne
%NACelé jméno dne v týdnu (např. Neděle)
%naZkrácený název dne v týdnu (např. Ne)
%vČíslo dne v týdnu (0-6)
%dDen v měsíci (01-31)
%jDen v roce (001-366)
% BCelé jméno měsíce (např. Leden)
% bMěsíc zkrácený název (např. Leden)
%mMěsíc (01-12)

Úplný seznam formátovacích znaků můžete získat pomocí --Pomoc možnost v terminálu.

date --help

4. Získejte den v týdnu

Jedním z velmi běžných a praktických použití formátování data je získání dne v týdnu pro dané datum. Chcete -li například zjistit, na který den v týdnu připadl 4. listopad 1995, zadejte podobný příkaz:

$ date -d '1996-04-11' +'%A'
Friday

The -d volba označuje, že chcete konkrétní datum, '1996-04-11' řetězec označuje požadované datum a + '% A' formátování označuje, že chcete ve výstupu den v týdnu. Pamatujte, že řetězec data může mít mnoho formátů, nejen ten, který je zde uveden.

5. Získejte koordinovaný světový čas

Vydáním -u vlajku, můžete získat aktuální čas v koordinovaném světovém čase (UTC).

$ date -u
Wed 21 Apr 2021 12:46:59 PM UTC

6. Vytvořte místní čas v jiném časovém pásmu

Pokud potřebujete získat datum v jiném časovém pásmu, můžete tak učinit nastavením TZ = proměnná prostředí před příkazem date.

Aktuální datum a čas můžete například zobrazit v Mountain Standard Time (MST) pomocí následujícího příkazu:

$ TZ=MST date
Tue 20 Apr 2021 03:45:29 PM MST

Pro vaše účely jednoduše vyměňte MST s iniciálami pro jakékoli časové pásmo, které upřednostňujete. Můžete se také rozhodnout používat zápis UTC. Chcete -li například získat stejné časové pásmo, nahraďte ho MST s UTC+7 .

Kromě toho můžete pojmenovat kontinent a hlavní město, abyste získali čas místního času konkrétního města. Například:

$ TZ=America/Phoenix date
Tue 20 Apr 2021 03:45:29 PM MST

7. Získejte čas poslední úpravy souboru

Pokud například vytváříte zálohy, budete často potřebovat zjistit datum poslední změny souboru. Můžete to udělat tím, že projdete -r možnost a pojmenování souboru.

$ date -r /etc/shadow
Wed 14 Apr 2021 07:53:02 AM CDT

Časová razítka souboru můžete změnit pomocí dotykový příkaz v Linuxu také.

8. Výstup a převod epochového času

Od té doby můžete vypočítat počet sekund epocha Unixu s následujícím příkazem:

$ date +%s
1618955631

Proces můžete také obrátit a převést unixový čas na formát čitelný pro člověka pomocí souboru -d možnost a @ charakter.

$ date -d @1618955631
Tue 20 Apr 2021 04:53:51 PM CDT

Výpočet unixového času je užitečný, pokud potřebujete přesnou vteřinu, která určitě zajistí synchronizaci ostatních zařízení.

9. Dočasně nastavte systémový čas

Systémové hodiny můžete z terminálu změnit pomocí příkazu date předáním příkazu -s argument následovaný časem, který chcete. Pomocí následujícího příkazu můžete například nastavit systémové hodiny na 24 hodin v budoucnosti:

date -s 'tomorrow'

K předání tohoto příkazu budete potřebovat oprávnění sudo. Kromě toho tato změna pravděpodobně nebude trvalá (to znamená, že se vaše hodiny po restartu vrátí na předchozí čas), protože většina distribucí používá ke správě systémových hodin jiné nástroje, které změnu při spuštění přepíšou.

Vysvětlen příkaz Linux date

Stejně jako v životě, ani v Linuxu nemůžete uniknout času. Proto je důležité porozumět tomu, jak jej formátovat a používat, pomocí příkazu date. Jedna věc, se kterou se určitě setkáte ve správě souborů Linux, jsou různá časová razítka, která soubory nesou s sebou.

Podíl Podíl tweet E-mailem Pochopení časových razítek souborů Linux: mtime, ctime a atime

Chcete se dozvědět více o tom, jak Linux sleduje změny v souboru? Zde je to, co potřebujete vědět o časových značkách souborů Linux.

jak odstranit všechna oznámení na Facebooku
Číst dále Související témata
  • Linux
  • Příkazy Linux
O autorovi Jordan Gloor(51 článků zveřejněno)

Jordan je spisovatelem zaměstnanců MUO, který je vášnivý pro to, aby byl Linux dostupný a bez stresu pro každého. Píše také průvodce o soukromí a produktivitě.

Více od Jordan Gloor

Přihlaste se k odběru našeho zpravodaje

Připojte se k našemu zpravodaji a získejte technické tipy, recenze, bezplatné elektronické knihy a exkluzivní nabídky!

Kliknutím sem se přihlásíte k odběru