Comando History mostrando o diretório: NO! : (
Comando Histórico mostrando a data: SIM! :)
Isso é porque (de 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;
Então, nada sobre o diretório onde o comando foi digitado.
Para saber a hora exata em que determinado comando foi executado, consulte 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.
Portanto, tudo o que você precisa fazer é definir $HISTTIMEFORMAT
algo assim no shell do cliente:
export HISTTIMEFORMAT="%F %T "
Para defini-lo permanentemente, execute o seguinte comando:
echo 'export HISTTIMEFORMAT="%F %T "' >> ~/.bashrc
O comando acima irá adicionar uma nova linha ( export HISTTIMEFORMAT="%F %T "
) no final do seu arquivo ~/.bashrc
.
Agora, a saída de history
será algo assim:
...
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