By default, all commands executed by Bash on the command line are stored in history buffer or recorded in a file called ~/.bash_history. This means that a system administrator can view a list of commands executed by users on the system or a user can view his/her command history using the history command like so.

$ history

 

From the output of the history command above, the date and time when a command was executed is not shown. This is the default setting on most if not all Linux distributions.

 

In this article, we will explain how you can configure time stamp information when each command in the Bash history was executed to be displayed.

 

The date and time associated with each history entry can be written to the history file, marked with the history comment character by setting the HISTTIMEFORMAT variable.

 

There are two possible ways of doing this: one does it temporarily while the other makes it permanent.

 

To set HISTTIMEFORMAT variable temporarily, export it as below on the command line:

$ export HISTTIMEFORMAT='%F %T'

 

In the export command above, the time stamp format:

%F – expands to full date same, as %Y-%m-%d (year-month-date).

%T – expands to time; same as %H:%M:%S (hour:minute:seconds).

 

Read through the date command man page for additional usage information:

$ man date

 

Then check your command history as follows:

$ history 

 

However, if you want to configure this variable permanently, open the file ~/.bashrc with your favourite editor:

$ vi ~/.bashrc

 

And add the line below in it (you mark it with a comment as your own configuration):

#my config
export HISTTIMEFORMAT='%F %T'

 

Save the file and exit, afterwards, run the command below to effect the changes made to the file:

$ source ~/.bashrc

 

Was this answer helpful? 0 Users Found This Useful (0 Votes)