Bourne Again Shell také známý jako Bash přichází s různými nástroji příkazového řádku pro manipulaci a automatizaci úloh. Jednou z takových utilit je datum příkaz, který se používá k získání data/času a manipulaci s ním. Za použití datum můžete také získat včerejší datum a použít jej ve skriptech Bash.
Získání včerejšího data může být užitečné pro generování sestav, správu dat a plánování úloh.
V tomto tutoriálu prozkoumám, jak použít příkaz datum k získání včerejšího data v Bash.
Co je příkaz Bash date
Jak najít včerejší datum v Bash na Linuxu
1. Vyhledání včerejšího data pomocí možností -d nebo – –date
Vyhledání včerejšího data pomocí EPOCHSECONDS
Jak najít včerejší datum v Bash na macOS
Závěr
Co je příkaz Bash date
Příkaz date v Bash zobrazí datum a čas v terminálu. Lze jej také použít k nastavení, změně nebo tisku data a času v různých formátech. Příkaz date je velmi užitečný pro automatizaci a plánování úloh ve skriptování Bash.
Chcete-li získat aktuální datum a čas, jednoduše zadejte datum v terminálu:
datum
Chcete-li získat datum ve formátu RRRR-MM-DD, použijte následující příkaz:
Ve výše uvedeném příkazu můžete místo lomítek (/) použít pomlčky (-).
Běžně používané znaky pro řízení formátu jsou uvedeny níže:
%d | Zobrazuje den v měsíci; například: 02 nebo 03. |
%D | Zobrazuje datum ve formátu Měsíc-Den-Rok. |
% m | Zobrazuje měsíc; například: 01-12 |
%v | Zobrazuje den v týdnu: například: 1-7. 1 je pondělí, 4 je čtvrtek. |
%V | Zobrazuje číslo týdne v roce. Například 00-53, 00 je první týden v roce, 01 je druhý týden v roce. |
%j | Zobrazuje den v roce; například 001 je první den v roce 366 je poslední den. |
Chcete-li získat další podrobnosti, spusťte následující příkaz, abyste se dostali na manuálovou stránku příkazu datum:
muž datum
Další důležitá možnost, která přichází s datum příkaz je -d nebo - -datum . Pomocí těchto možností můžeme získat předchozí data, budoucí data a dokonce i včerejší data. Tyto volby se používají k zobrazení času zadaného ve formě řetězců. Například:
Nebo:
Jaké další řetězce mohou akceptovat volby -d nebo – –date, jsou uvedeny níže:
-
- zítra
- včera
- minulou sobotu
- příští sobotu
- minulý týden
- příští týden
- minulý rok
- příští rok
- před X s
- Před X dnem
- před X týdnem
- Před X rokem
- X dní
- X týden
- X rok
V další části použiji -d a - -datum možnosti najít včerejší datum.
Jak najít včerejší datum v Bash na Linuxu
Chcete-li najít včerejší datum v Bash, existuje několik způsobů. Budu diskutovat o každé metodě:
-
- Vyhledání včerejšího data pomocí možností -d nebo – –date
- Vyhledání včerejšího data pomocí EPOCHSECONDS
Poznámka: Nalezení včerejšího data závisí na datových možnostech systému.
1. Vyhledání včerejšího data pomocí možností -d nebo ––date
Chcete-li získat včerejší datum v Bash, použijte následující příkaz:
datum -d 'před 1 dnem'
Nebo použijte:
The před 1 dnem řetězec lze také nahradit -1 den.
Datum můžete také formátovat pomocí formátovacích znaků.
Dalším způsobem, jak získat včerejší datum v bash, je použití řetězce včera s -d nebo - -datum možnosti.
Chcete-li jej naformátovat ve formátu YYYY/MM/DD, použijte následující příkaz:
Jaká jsou omezení možností -d nebo – –date v Linuxu
Volby -d nebo – –date poskytují včerejší datum, ale tyto volby mají určitá omezení. Tyto možnosti neberou v úvahu Letní čas nebo DST při poskytování výstupu a spoléhat se na aktuální časové pásmo. Příkaz datum jednoduše odečte 24 hodin od aktuálního data a času, aby poskytl včerejší výstup, který eliminuje úvahy o DST.
Jedním ze způsobů, jak se takové situaci vyhnout, je použití UTC (příznak -u) čas, který se při výpočtu včerejšího data nespoléhá na místní časové pásmo a poskytuje výstup podle pevného časového pásma. Použijte parametr -u s příkazem date:
datum -v --datum 'včera' + '%Y-%m-%d'
2. Vyhledání včerejšího data pomocí EPOCHSECONDS
Včerejší datum lze také zjistit pomocí EPOCHSECONDS. Chcete-li zjistit včerejší datum, proveďte následující příkaz:
printf -v včera '%(%Y/%m/%d)T' $ ( ( EPOCHSECONDS – 86400 ) )
Chcete-li vytisknout včerejší datum:
Tento příkaz vypočítá datum předchozího data pomocí EPOCHSECONDS a přiřadí je k včera variabilní v YYYY-MM-DD formát. EPOCHSECONDS je počet sekund od 1. ledna 1970, kde 86400 znamená počet sekund za den.
Jak najít včerejší datum v Bash na macOS
Ačkoli macOS přichází se Zsh jako výchozím prostředím, mnozí stále preferují Bash, který je široce používán. Příkaz datum v macOS nepodporuje včera syntaxe, proto je postup získání včerejšího data na macOS trochu jiný.
V systému macOS, datum příkaz se používá k nalezení včerejšího data.
datum -v-1d
Chcete-li získat včerejší datum v konkrétním formátu v systému macOS, použijte:
Parametr -v se používá k nastavení času a data; například: pokud chcete datum předchozího dne, použijte 1 d s mínusem ( – ) podepsat. Chcete-li zjistit datum na další den, jednoduše použijte plus ( + ) podepsat. Zde d představuje dny od 1 do 31. Další podrobnosti získáte provedením následujícího příkazu v terminálu bash systému macOS:
Poznámka: Příznak -v je specifický pro macOS a nemusí fungovat na jiných operačních systémech, jako je Linux.
Závěr
Abyste mohli plánovat úlohy, vytvářet sestavy a zálohovat data jako správce systému, musíte pracovat s datem a časem. Chcete-li získat včerejší datum v systému Linux, můžete použít příkaz date with -d nebo - -datum vlajky. V macOS se také používá příkaz date, ale s a -v příznak a kladné nebo záporné celé číslo s d charakter.