我想看看执行什么命令以及何时执行。 历史命令仅记录带有时间戳的命令。 我检查的是人(3)的历史,我可以看到:
typedef void * histdata_t;
typedef struct _hist_entry {
char *line;
char *timestamp;
histdata_t data;
} HIST_ENTRY;
这是否意味着有办法查看命令执行时间?
此外,我发现其他人也在寻找类似的解决方案:
Linux history of all commands executed during whole day, everyday
他们正在寻找记录时间的解决方案。 但我所追求的是命令执行时间用户在过去的时间,而不是将来。答案 0 :(得分:1)
使用history命令,您可以启用时间戳,如下所示:
export HISTTIMEFORMAT='%F %T '
然后,当您调用历史记录时,将启用时间戳。
示例:
1754 2014-07-10 10:12:24 sed -i '0,/port \([0-9]*\)/{s/port \([0-9]*\)/port 7777/}' test.txt
1755 2014-07-10 10:12:26 cat test.txt
1756 2014-07-10 10:16:54 export HISTTIMEFORMAT='%F %T '
1757 2014-07-10 10:16:55 history
me@owncloud:~$