Vedle každého vašeho příkazu. přidat časové razítko (datum a čas) Bashův příběh? To lze provést pomocí HISTTIMEFORMAT
Bash proměnná.
Bash ukládá historii zadávaných příkazů, ke kterým se dostanete klepnutím na history
. Ve výchozím nastavení uvidíte číslo a za ním naposledy použité příkazy:
$ history
1889 cd Cloaker/
1890 ./Cloaker.run
1891 sudo apt upgrade
1892 sudo apt autoremove
1893 history
S pomocí HISTTIMEFORMAT
Proměnnou bash můžete použít k zobrazení data a času provedení každého příkazu. To může být užitečné při různých příležitostech, jako je zapamatování si příkazů, které jste provedli v daném časovém rámci, vrácení různých operací a tak dále.
Stojí za zmínku, že když je tato proměnná nastavena, časová razítka se zapisují do souboru historie, takže jsou zachována během relací shellu. Takže při první aktivaci neuvidíte správné datum a čas pro dříve používané příkazy.
Další vylepšení historie bash, které by se vám mohlo líbit:HSTR usnadňuje vyhledávání vašeho bashu nebo historie příkazů zsh
Nastavte historii bash tak, aby zobrazovala časové razítko pro vaši historii příkazů (pouze pro aktuální relaci terminálu) pomocí tohoto příkazu:
HISTTIMEFORMAT="%F %T "
Tento příkaz se vztahuje pouze na tuto relaci, takže můžete vidět, jak vypadá, a volitelně nakonfigurovat formát data a času (viz níže).
Nyní zadejte history
a měli byste vidět časové razítko pro příkazy historie bash:
$ history
2027 2019-07-12 13:02:31 sudo apt update
2028 2019-07-12 13:02:33 history
2029 2019-07-12 13:03:35 HISTTIMEFORMAT="%F %T "
2029 2019-07-12 13:03:38 man date
2030 2019-07-12 13:03:55 history
Exportovali jsme HISTTIMEFORMAT
s následujícím časovým razítkem:
-
%F
:celé datum (rok-měsíc-datum) -
%T
:Čas (hodina:minuty:sekundy)
Za ním je mezera %T
a před "
takže ve vaší historii bash je mezera mezi provedením příkazu a příkazem samotným. Bez ní by ti dva nebyli odděleni.
Můžete upravit datum a čas. Použijte HISTTIMEFORMAT="%Y/%m/%d %T "
pro zobrazení data jako roku (4 číslice) -měsíc-den a času jako hodiny (00..24):minuty:sekundy. Zobrazte datum jako měsíc / den / rok (2 číslice) s %m/%d/%y
. Chcete zobrazit čas jako 00..12 následovaný AM / PM namísto 00..24? Použijte %I:%M:%S %p
jako formát času. Viz příkaz Datum, jak dále formátovat datum a čas.
Nyní je čas exportovat HISTTIMEFORMAT
z vašeho ~/.bashrc
Soubor, chcete-li jej nastavit jako výchozí pro všechny nové terminálové relace vašeho uživatele . Můžete buď své. otevřete ~/.bashrc
Soubor pomocí textového editoru a vložte export HISTTIMEFORMAT="%F %T "
(nebo jiný formát data a času) níže, poté soubor uložte nebo spusťte tento příkaz a převeďte jej na váš. napsat ~/.bashrc
:
echo 'export HISTTIMEFORMAT="%F %T "' >> ~/.bashrc
Tento příkaz spusťte pouze jednou, protože přidá export HISTTIMEFORMAT="%F %T "
na ~/.bashrc
pokaždé, když jej spustíte.
Poté vše, co musíte udělat, je provést ~/.bashrc
Soubor tak, aby aktuální relace terminálu používala nová nastavení (nebo můžete otevřít nový terminál a ten automaticky vyzvedne nový HISTTIMEFORMAT
nastavení):
source ~/.bashrc
Pamatujte, že když poprvé povolíte časová razítka v historii bash, neuvidíte datum/čas pro žádný z dříve používaných příkazů. Datum a čas na začátku řádku zobrazí pouze příkazy, které se spouštějí poté, co jste povolili časová razítka pro historii bash.
Myslím, že se vám bude také líbit:z.lua – Faster Way Of Changed Directories (příkaz cd, který se učí, jak jej používáte)