Donc, j'ai regardé l'histoire et Ctrl+R, mais ce n'est pas ce que je pensais savoir. Existe-t-il un moyen de taper au début d'une commande et de parcourir les correspondances de mon historique avec un raccourci bash?
# mysq(some shortcut key)
Donne moi:
# mysqldump --add-drop-table -e -q -n -C -u
(some shortcut key)
# mysql -u ben.dauphinee -p
Pressage Ctrl+R ouvrira la recherche d'historique inversée. Maintenant, commencez à taper votre commande, cela donnera la première correspondance. En appuyant Ctrl+R encore et encore, vous pouvez parcourir l'histoire.
mysq(Ctrl+R)
Donnerait:
mysqldump --add-drop-table -e -q -n -C -u
Ctrl+R encore:
mysql -u ben.dauphinee -p
Pour développer ce que Gilles a dit, j'ai ce qui suit dans mon .inputrc
pour lier la flèche haut/bas à history-search-backward
et history-search-forward
:
# Key bindings, up/down arrow searches through history
"\e[A": history-search-backward
"\e[B": history-search-forward
"\eOA": history-search-backward
"\eOB": history-search-forward
Tapez simplement quelque chose (facultatif), puis appuyez sur la touche fléchée haut/bas pour rechercher dans l'historique des commandes qui commencent par ce que vous avez tapé.
Pour ce faire dans .bashrc
plutôt que .inputrc
, vous pouvez utiliser:
bind '"\e[A": history-search-backward'
Vous pouvez également appuyer sur le bouton PAGEUP
pour compléter automatiquement une commande. Il recherche essentiellement le bash_history
fichier.
Vous pouvez utiliser les commandes readline history-search-backward
et history-search-forward
pour naviguer entre les lignes de commandes commençant par le préfixe que vous avez déjà tapé. Aucune de ces commandes n'est liée aux clés dans la configuration par défaut.
Zsh (zle) a des commandes similaires history-beginning-search-backward
et history-beginning-search-forward
, également non lié aux clés par défaut. Il y a aussi history-search-backward
et history-search-forward
, qui utilise le premier mot de la commande en cours comme préfixe pour rechercher quelle que soit la position du curseur.
Si vous voulez un bon aperçu des commandes très similaires, vous pouvez obtenir une liste avec:
history|grep KEYSTRING
Copiez et collez ensuite avec le bouton central de votre souris.
Rgds - Joe