Most usefull shortcut
Ctrl + r : Search and reverse. (ctrl+r pour remonter l’history).Ctrl + l : Clear the screen (instead to use “clear” command).Ctrl + p : Repeat last command.Ctrl + x + Ctrl + e : Edit the current command on an external editor. (Need to define export EDITOR=vim ).Ctrl + shift + v : Copy / paste in linux.Ctrl + a : Move to the begin of the line.Ctrl + e : Move to the end of the line.Ctrl + xx : Move to the opposite end of the line.Ctrl + left : Move to left one word.Ctrl + right : Move to right one word.
Ctrl + u : Cut from cursor to begin of line.Ctrl + k : Cut from cursor to end of line.Ctrl + w : Cut from cursor to start of word (delete backwards 1 word).Alt + d : Cut from cursor to end of word.Ctrl + y : Paste text cut using previous commands.Ctrl + / : Undo.
Alt + b : move one word behind.Alt + f : go ahead one word.Alt + t : Transposes the 2 words before or under the cursor.Alt + u : UPPERCASE from cursor to end of word.Alt + l : Lowercase from cursor to end of word.Alt + . : Last word of the previous command.
Ctrl + s : Stop the output (for long verbosing commands).Ctrl + q : Allow the output (if previously stopped).Ctrl + c : Terminate the command.Ctrl + z : Suspend/stop the command.
Rappel in the History
!! : Repeat last command.!-n : Repeat the command triggered “n” lines back.!str : Repeat last command starting with “str”.!str:2 : Repeat Last command starting with “str” but take only the second arguments.!?str? : Repeat last command containing “str”.!* : All arguments of the previous command.!^ : First argument of the previous command.!$ : Last argument of the previous command.!:x-y : Argument from ‘x’ until ‘y’ of the previous command.!:r : Remove the suffix leaving the basename.!:e : Remove all but the trailing suffix.!:h : Remove a trailing pathname component, leaving only the head. Can be used twice or more.!:t : Remove all leading pathname components, leaving the tail (the name of the file).!$:h : Take the head of the last argument of the last command.
Configure your bash history
in your .bashrc
 1export HISTTIMEFORMAT='%F %T '        # Horodatage in history
 2export HISTSIZE=450
 3export HISTFILESIZE=450
 4export HISTFILE=/root/.commandline_warrior
 5export HISTCONTROL=ignoredups         # ignore repeated commandes consecutively in the history
 6export HISTCONTROL=erasedups          # ignore repeated commandes in the all history 
 7export HISTIGNORE="pwd:ls:ls -ltr:"   # ignorer somes commandes
 8
 9shopt -s histappend                   # history Append (au lieu d'etre eccrasse a chaque fois)
10
11# Auto-increment (and not at the end of the session)
12export PROMPT_COMMAND="history -a; history -c; history -r; $PROMPT_COMMAND"
13
14history -c                            # clear le history
Comments