Existuje způsob, jak v souboru .bash_history uvést:adresář, do kterého byl zadán příkaz, datum a příkaz?
Přijatá odpověď:
Příkaz historie zobrazující adresář:NE! 🙁
Příkaz historie zobrazující datum:ANO! 🙂
Je to proto, že (z man history
):
The history list is an array of history entries. A history entry is declared as follows: typedef void * histdata_t; typedef struct _hist_entry { char *line; char *timestamp; histdata_t data; } HIST_ENTRY;
Takže nic o adresáři, kde byl příkaz napsán.
Chcete-li zjistit přesný čas provedení určitého příkazu, podívejte se na help history
:
If the $HISTTIMEFORMAT variable is set and not null, its value is used as a format string for strftime(3) to print the time stamp associated with each displayed history entry. No time stamps are printed otherwise.
Takže vše, co musíte udělat, je nastavit $HISTTIMEFORMAT
něco takového v aktuálním shellu:
export HISTTIMEFORMAT="%F %T "
Chcete-li jej trvale nastavit, spusťte následující příkaz:
echo 'export HISTTIMEFORMAT="%F %T "' >> ~/.bashrc
Výše uvedený příkaz přidá nový řádek (export HISTTIMEFORMAT="%F %T "
) na konci vašeho ~/.bashrc
soubor.
Nyní výstup history
bude vypadat nějak takto:
...
1613 2013-11-13 13:00:15 cat .bash_history
1614 2013-11-13 13:01:04 man history
1615 2013-11-13 13:11:58 help history
1616 2013-11-13 13:19:07 ls
1617 2013-11-13 13:19:09 cd
1618 2013-11-13 13:19:15 history
Viditelnost stavového panelu Nautilus – rychle zkontrolovat volné místo?
Existuje software, který sleduje okno a využití aplikací?