DEV Community

Cover image for Linux adding a timestamp to the bash history
Chris Bongers
Chris Bongers

Posted on • Originally published at daily-dev-tips.com

Linux adding a timestamp to the bash history

In Linux systems, by default, the history does not include a timestamp, which can be annoying when you want to see when a command was executed to determine an update or some kind.

So today, I'll be showing you how to enable timestamps for the bash history in Linux.

Retrieving the history

Before we get started, let's look at how the history works and which files are attached.

The bash history is kept so we can retrieve whatever actions some user did.

To retrieve this history, we can type the following command.

history
Enter fullscreen mode Exit fullscreen mode

It should come back with something that looks like this.

Linux bash history

To find where this file is located you can run the following command.

echo $HISTFILE
Enter fullscreen mode Exit fullscreen mode

It will generally come back with a location like:

/root/.bash_history
Enter fullscreen mode Exit fullscreen mode

Changing the bash history output format

However, to change the history output, we have to make a change in the configuration settings.

These configuration settings are set in a file called .bashrc.

We need to add the HISTTIMEFORMAT config settings, which will change the output.

There are two ways to include this in your .bashrc file.

  1. Manually open the .bashrc file and paste it in.
  2. Echo it into the file.
# method 1
nano ~/.bashrc
# now paste:
export HISTTIMEFORMAT="%F %T "

# method 2
echo 'export HISTTIMEFORMAT="%F %T "' >> ~/.bashrc
Enter fullscreen mode Exit fullscreen mode

The format we are using includes the %F and %T variables which stand for:

  • %F: full date (year-month-day)
  • %T: time (hour:minute:seconds)

Now you won't see the change yet. We have to enable it, which we can do by rebooting or simply running this command:

source ~/.bashrc
Enter fullscreen mode Exit fullscreen mode

Now when we run the history command, we should see something like this.

History with timestamps

As you can see, we now have timestamps in front of our history!

Thank you for reading, and let's connect!

Thank you for reading my blog. Feel free to subscribe to my email newsletter and connect on Facebook or Twitter

Top comments (0)