Bash - History (builtin command)

Bash Liste Des Attaques Ovh


history is a Builtin Command that shows the history of the command executed.


Don't add a command in the history

A space at the start of a command will stop the command (and any password) from being stored in the history.


  • With no options, display the command history list with line numbers.
  • Lines listed with a * have been modified.
history [n]
history -c
history -d offset
history -anrw [filename]
history -p arg [arg ...]
history -s arg [arg ...]


  • n will list only the last n lines.
  • filename is used as the name of the history file; if not, the value of HISTFILE is used.
  • -c: Clear the history list by deleting all the entries.
  • -d Offset delete the history entry at position offset.
  • -a Append the new history lines (history lines entered since the beginning of the current bash session) to the history file.
  • -n Read the history lines not already read from the history file into the current history list. These are lines appended to the history file since the beginning of the current bash session.
  • -r Read the contents of the history file and use them as the current history.
  • -w Write the current history to the history file, overwriting the history file’s contents.
  • -p Perform history substitution on the following args and display the result on the standard output. Does not store the results in the history list. Each arg must be quoted to disable normal history expansion.
  • -s Store the args in the history list as a single entry. The last command in the history list is removed before the args are added.



If the shell variable HISTTIMEFORMAT is set and not null, it is used as a format string for strftime to display the time stamp associated with each displayed history entry.

The time stamp information associated with each history entry is written to the history file.

export HISTTIMEFORMAT="%d/%m/%y %T 

No intervening blank is printed between the formatted time stamp and the history line.


A colon-separated list of patterns used to decide which commands should be saved on the history list.


Characters controlling history expansion and quick substitution.

  • The first character is the history substitution character, usually !.
  • The second is the quick substitution character, usually ^.
  • The third is the history comment character, usually #.


The value of the history file


All shortcuts can be found with the bind command

bind -P | grep history
beginning-of-history can be found on "\e<", "\e[5~".
dynamic-complete-history can be found on "\e\C-i".
end-of-history can be found on "\e>", "\e[6~".
forward-search-history can be found on "\C-s".
history-and-alias-expand-line is not bound to any keys
history-expand-line can be found on "\e^".
history-search-backward is not bound to any keys
history-search-forward is not bound to any keys
next-history can be found on "\C-n", "\eOB", "\e[B".
non-incremental-forward-search-history can be found on "\en".
non-incremental-forward-search-history-again is not bound to any keys
non-incremental-reverse-search-history can be found on "\ep".
non-incremental-reverse-search-history-again is not bound to any keys
previous-history can be found on "\C-p", "\eOA", "\e[A".
reverse-search-history can be found on "\C-r".
vi-fetch-history is not bound to any keys

Reading the history: One line by one line

  • Up/Down Arrows
  • Ctrl+P

Executing an command in the history with its id

The first number of the history output is the history id

#  mutliple
!historyId1; !historyId2;


Lets you search your command history for a search term.

Steps to search commands that included the search term 'youpi':

  • Hit Ctrl+R and type 'youpi'.
  • You will get the last command
  • If this is not what you want, type Ctrl + R
  • When the desired command appears, uses :
    • the left arrow to select it.
    • or Enter to execute it


history | grep mySearchTerm

Documentation / Reference

Discover More
Bash Liste Des Attaques Ovh
Bash - (Builtin|Intern|System|Reserved|Shell) variable name

Reserved variable name are named that have a special meaning for the bash shell. PS1 defines the shell's command-line prompt. HOME defines the home directory for a user. PATH defines a list...
Bash Liste Des Attaques Ovh
Bash - Builtin Commands

builtin refers to: a builtin command. See or to the specific builtin command. See (useful when defining a function whose name is the same as a shell builtin) The builtin command execute the specified...
Bash Liste Des Attaques Ovh
Bash - History Expansion

History expansion
Bash Liste Des Attaques Ovh
Bash - Set (of Bash Options)

The set builtin command can be specify shell option. When options are specified, they set or unset shell attributes. Without options, the name and value of each shell variable are displayed in a...
Bash Liste Des Attaques Ovh
Bash - fc (Fix Command) - Range of command from history - (builtin)

Fix Command (fc) is a builtin command that retrieve a range of commands from first to last is selected from the history list. fc has two modes: editing (default). listing (-l option) where:...
Putty Log
SSH - Putty (telnet, ssh client)

Putty is a communications client program to establish a telnet or ssh connection to a target server system, along with an xterm terminal emulator. It is written and maintained primarily by Simon...

Share this page:
Follow us:
Task Runner