We can always set time to the commands showed in history command. Why we require to set time for this?
This is totally a security measure and used for troubleshooting/fingerprinting a security threat.
history command sample output before setting this variable.
466 df -h
470 find / -iname *.ppt
472 man ping
473 ping -R google.com
So how to set that?
Use inbuilt variable HISTTIMEFORMAT to set the values as shown below
#export HISTTIMEFORMAT='%F %T '
%F for setting year/month/day
%T for setting time
now try to execute history command to see the difference
500 2011-03-16 17:06:09 exit
501 2011-03-16 17:06:14 apt-get install tree
502 2011-03-16 17:06:36 tree
503 2011-03-16 17:06:54 man tree
504 2011-03-16 17:07:02 tree -d
505 2011-03-16 17:07:07 tree
If you restart/logout from machine will this setting available to you?
A simple answer for this is no. Then how can we make it permanent?
Just append this variable to .bash_profile for every user.
echo "export HISTTIMEFORMAT='%F %T '" >> ~/.bash_profile
How about setting this value to the new user which are going to be created on the machine?
export it to /etc/profile file
echo "export HISTTIMEFORMAT='%F %T '" >> /etc/profile
Please feel free to comment your thoughts on this.
The following two tabs change content below.
My name is Surendra Kumar Anne. I hail from Vijayawada which is capital of south Indian state of Andhra Pradesh. I am a Linux evangelist who believes in Hard work, A down to earth person, Likes to share knowledge with others, Loves dogs, Likes photography. I work with ICE systems, Sydney as Sr. Consultant. You can contact me at surendra (@) linuxnix dot com.