Recherche des mots dans l'history avec pageup et pagedown

Editer le fichier /etc/inputrc

# mappings for "page up" and "page down" to step to the beginning/end
# of the history
"\e[5~": history-search-backward
"\e[6~": history-search-forward

# mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving
"\eO5C": forward-word
"\eO5D": backward-word

Retrouver les keymap

Pour retrouver le raccourci dans un shell faites CTRL-V et tappez le raccourci souhaitez. Exemple sous fedora CTRL+left arrow donne "^[O5D", il faut remplacer le "^[" par "\e" ce qui donne "\eO5D".

Autre solution, au lieu de modifier le /etc/inputrc, on peut utiliser bind dans le .bashrc

bind '"\e[5~":history-search-backward' bind '"\e[6~":history-search-forward'

Autres choses interessantes

  1. completion cyclique

bind '"²":menu-complete'

  1. montrer les possibilités si choix ambigu dans la completion

bind "set show-all-if-ambiguous on"

  1. ignorer la casse pour la completion

bind "set completion-ignore-case on"

.bashrc example

#aliases
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
#alias grep='grep --color'
export GREP_OPTIONS='--color=auto'

#environment
PS1='\[\033[01;34m\]\t \[\033[01;32m\]\u@\h \[\033[01;34m\]\w \$ \[\033[00m\]'
EDITOR="/usr/bin/nano"
VISUAL="/usr/bin/nano"

#history
bind '"\e[5~":history-search-backward'
bind '"\e[6~":history-search-forward'

#completion cyclique
bind '"²":menu-complete'
#montrer les possibilités si choix ambigu dans la completion
bind "set show-all-if-ambiguous on"
#ignorer la casse pour la completion
bind "set completion-ignore-case on"

#calculatrice
calc(){ awk "BEGIN{ print $* }" ;}

Ensuite

source .bashrc

Autre truc interessant à mettre dans le .bashrc pour les chmod :

  1. chmod all files/directory

alias chmodd=’find . -type d -exec chmod 711 {} \;’ alias chmodf=’find . -type f -exec chmod 755 {} \;’

Locale en UTF-8 pour l'utilisateur courant

export lang=fr_FR.utf8 export LANG=fr_FR.utf8 export LANGUAGE=fr_FR.utf8 export LC_ADDRESS=fr_FR.utf8 export LC_ALL=fr_FR.utf8 export LC_COLLATE=fr_FR.utf8 export LC_IDENTIFICATION=fr_FR.utf8 export LC_MESSAGES=fr_FR.utf8 export LC_MEASUREMENT=fr_FR.utf8 export LC_MONETARY=fr_FR.utf8 export LC_NAME=fr_FR.utf8 export LC_NUMERIC=fr_FR.utf8 export LC_PAPER=fr_FR.utf8 export LC_TELEPHONE=fr_FR.utf8 export LC_TIME=fr_FR.utf8 export LC_TYPE=fr_FR.utf8

Et voilà!