====== Shortcuts ======
* ^D logout/exit (only if current command line is empty)
* ^K cut
* ^Y paste
* ^E go the the end of the line (end key)
* ^A go the the beginning of the line (home key)
* ^R bck-i-search find pattern in shell history
* ^T swap two letters
* ^W clear word
* ^U clear line
* ^L clear screen
* ^Z stop a process, which can be restarted either in the foreground by typing "fg" (foreground), or in the background with "bg"
Notez qu'apres un ^U et un ^W il est possible de le recoller avec un ^Y
Sous X, vous pouvez toujours utiliser shift + insert pour coller du texte surligné a la souris
Enfin, c'est deja pas mal, mais la touche alt (meta) peut elle aussi servir :
* M-f go forward word-by-word
* M-b go backward word-by-word
* M-. insert last command argument, just like $!
N.B. xterm users, you must activate "meta send escape".
====== Emacs/VI mode ======
Bash can use Emacs or VI shortcuts, using the "set" command.
Like all GNU tools, "Emacs" is the default mode.
===== Emacs =====
set -o emacs
ctrl-a Move cursor to beginning of line
ctrl-e Move cursor to end of line
meta-b Move cursor back one word
meta-f Move cursor forward one word
ctrl-w Cut the last word
ctrl-u Cut everything before the cursor
ctrl-k Cut everything after the cursor
ctrl-y Paste the last thing to be cut
ctrl-_ Undo
===== VI =====
set -o vi
h Move cursor left
l Move cursor right
A Move cursor to end of line and put in insert mode
0 (zero) Move cursor to beginning of line (doesn't put in insert mode)
i Put into insert mode at current position
a Put into insert mode after current position
dd Delete line (saved for pasting)
D Delete text after current cursor position (saved for pasting)
p Paste text that was deleted
j Move up through history commands
k Move down through history commands
u Undo
====== inputrc usage ======
===== History =====
Shortcuts can be customized using /etc/inputrc or ~/.inputrc; here are the lines to add to have a csh-style history:
"\e[A": history-search-backward
"\e[B": history-search-forward
===== Completion =====
set show-all-if-ambiguous on
set visible-stats on
The first command allows completion by pressing just [Tab], the second command adds a sign for each filetype (* for executable file)
====== Misc. tweaks ======
Activate timestamping in 'history':
export HISTTIMEFORMAT='%Y-%m-%d %H:%M:%S '
====== Useful links ======
* http://wiki.gcu.info/doku.php?id=sh:ssh_escape_sequence
* http://wiki.gcu.info/doku.php?id=bazaar:shellshortcut
* http://www.hypexr.org/bash_tutorial.php
* http://www.caliban.org/bash/