Sommaire
Shell
Ce qui est commun à la plupart des shells.
Bash
Généralités
- Ctrl+R : permet de rechercher dans son historique.
- Ctrl+C : permet (avec un peu de chance) d'interrompre le programme en cours (envoi SIGINT). Si aucun n'est actif, présente une nouvelle ligne.
- Ctrl+D : quitter le shell (marche aussi avec beaucoup d'applications commandline)
- Ctrl+Z : suspendre la tâche active
- fg : mettre une tâche de suspendue au premier plan
- jobs : liste les tâches de fond.
- bg : passe une tâche suspendue en tâche de fond.
- Ctrl+4 : envoie SIGQUIT (le programme quitte assez souvent). Ce signal est ignoré par bash.
Plus de raccourcis clavier
(testés sous gnome-terminal avec bash, mais rien ne prouve que ça marche pas ailleurs)
(on utilise ^touche pour dire Ctrl+touche)
Raccourcis qui servent à rien :
^P : équivalent de ↑
^N : équivalent de ↓
^H : équivalent de backspace
^J, ^M : envoie la commande
Raccourcis stylés :
^W : efface le dernier "mot" (séparateur : espace)
^T : swappe les deux dernières lettres avant le curseur si il est en fin de ligne,
- ne fait rien si en début de ligne,
- sinon, swappe la lettre sur laquelle il est avec la précédente et avance le curseur d'un caractère.
^U : efface toute la ligne avant le curseur
^K : efface toute la ligne après le curseur
^A/^E : place le curseur au début/à la fin de la ligne (équivalent de ↖/fin)
^F/^B : avance/recule le curseur d'un cran
^-/^+/^0 : rétrécit/agrandit/réinitialise la police (influence la taille du terminal)
^←/^→ : sauter d'un "mot" vers la gauche/droite (séparateur : tout ce qui n'est pas [A-Za-z0-9])
Sous zsh (avec sa configuration par défaut du moins), ces raccourcis ne marchent pas, mais Alt-B/Alt-F font la même chose (comme sous emacs) -- Krokmou 2018-05-17 13:56:33
^L : clear. ça ne vide pas le terminal, mais ça colle en haut de l'écran le prompt actuel.
- Pratique si vous avez tapé au vu et au su de tout le monde un truc du genre votre mot de passe.
Raccourcis über stylés :
^R (suivi d'une chaîne de caractères) : recherche dans l'historique la dernière commande tapée contenant la chaîne de caractères.
Refaire ^R pour avoir la précédente.
- (Quand vous effacez pour corriger, pensez à effacer même les caractères qu'il n'affiche pas quand la chaîne ne matche rien)
^O : envoie la ligne, et fait réapparaître la commande suivant celle-ci dans l'historique. (très utile pour réexécuter une séquence de commandes)
^_ : annule la dernière frappe. Marche aussi avec l'effacement.
^Y : colle le dernier truc qui a été effacé avec ^U, ^K ou ^W
^X^X : téléporte le curseur au début de la ligne en mémorisant sa position
un nouveau ^X^X remet le curseur à la position mémorisée
Ici ^ ne signifie pas Ctrl mais bien le 94ème caractère de la norme ascii "accent circonflexe"
^foo^bar remplace dans la commande précédente la 1ère occurence de foo par bar
Mode Vi
Pour être dans ce mode, il suffit d'exécuter
set -o vi
Commandes
La touche 'Esc' sert à basculer dans le mode commande (comme dans vi). Voici quelques fonctionnalités intéressantes :
<Esc>. : permet de reprendre la dernière partie de la commande précédente.
Mode Emacs
- Ctrl+A: place le curseur au début de la ligne courante
- Ctrl+B: recule le curseur d'un cran à gauche
- Ctrl+E: place le curseur à la fin de la ligne courante
- Ctrl+F: avance le curseur d'un crans à droite
- Ctrl+G: présente une nouvelle ligne avec un code d'erreur 1
- Ctrl+H: backspace
- Ctrl+I: tabulation
- Ctrl+J: entrée
- Ctrl+K: coupe du curseur à la fin de la ligne
- Ctrl+L: clear
- Ctrl+M: entrée
- Ctrl+N: ligne suivante (dans l'historique)
- Ctrl+P: ligne précédente (dans l'historique)
- Ctrl+Q: resume
- Ctrl+R: recherche dans l'historique
- Ctrl+S: suspend le shell
- Ctrl+T: échange le caractère sous le curseur avec celui avant, puis avance le curseur. En fin de ligne, échange les deux derniers caractères
- Ctrl+U: coupe toute la ligne
- Ctrl+V: caractère d'échapement
- Ctrl+W: coupe le mot avant le curseur
- Ctrl+Y: colle
- Ctrl+Z: suspend le processus courant
- Alt+B: place le curseur au début du mot précédent
- Alt+C: capitalise la lettre sous le curseur ou la première lettre du mot suivant et place le curseur au début du mot d'après
- Alt+D: Supprime la fin du mot courant
- Alt+F: place le curseur au début du mot suivant
- etc...
Zsh
Configuration
Une bonne configuration de base : http://formation-debian.via.ecp.fr/fichiers-config/zshrc
Sinon on peut s'inspirer de ce que l'on trouve sur ce blog (dont l'auteur a donné son nom à un type de point sur les news du crans) http://vincent.bernat.im/fr/blog/2011-zsh-zshrc.html