Bash remove history command

Is it possible to remove bash history? What command I need to type delete all history when using bash on Linux system?

Yes, you can clear the history list by deleting all of the entries. We use the following command:

history -c && history -w

In other worlds we passed the following options:

  • -c : Remove history file
  • -w : write the current history to the history file (like flush)

How to effectively clear your bash history daily

We use the following commands too:

cat /dev/null > ~/.bash_history

Another option is to combine it as follows so that nothing is stored:

cat /dev/null > ~/.bash_history && history -c && exit
1 Like

Check out my page:


1 Like

Very useful. i just figured out how to get help too:

history --help

Then I saw complete help for the history. You know man bash is to big to read on screen :wink:

history: history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...]
    Display or manipulate the history list.
    Display the history list with line numbers, prefixing each modified
    entry with a `*'.  An argument of N lists only the last N entries.
      -c	clear the history list by deleting all of the entries
      -d offset	delete the history entry at position OFFSET. Negative
    		offsets count back from the end of the history list
      -a	append history lines from this session to the history file
      -n	read all history lines not already read from the history file
    		and append them to the history list
      -r	read the history file and append the contents to the history
      -w	write the current history to the history file
      -p	perform history expansion on each ARG and display the result
    		without storing it in the history list
      -s	append the ARGs to the history list as a single entry
    If FILENAME is given, it is used as the history file.  Otherwise,
    if HISTFILE has a value, that is used, else ~/.bash_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.
    Exit Status:
    Returns success unless an invalid option is given or an error occurs.

Linux sysadmin blog - Linux/Unix Howtos and Tutorials - Linux bash shell scripting wiki