10 votes

Recherche dans l'historique du terminal avec les touches haut et bas dans OS X Lion

Après la mise à niveau vers OS X, je ne suis pas en mesure d'utiliser mes liens ~/.inputrc pour effectuer des recherches dans l'historique des commandes du shell :

# these allow you to start typing a command and
# use the up/down arrow to auto complete from
# commands in your history
"\e[B": history-search-forward
"\e[A": history-search-backward

Une idée de ce que je dois changer ou faire ? Existe-t-il des clés par défaut que je pourrais utiliser ?

1 votes

Je ne sais pas ce qui pourrait clocher, mais à titre de comparaison, mon fichier .inputrc a les mêmes liens que le vôtre et ils fonctionnent (Mac OS X Lion 10.7.1). En fait, si je supprime complètement mon .inputrc, les touches fléchées fonctionnent toujours, car par défaut elles correspondent à des commandes d'historique similaires, comme le montre l'exemple suivant bind -P . Qu'arrive-t-il aux touches fléchées haut/bas si vous supprimez (ou renommez) votre fichier .inputrc ?

6voto

Matt Points 881

Le défilement de l'historique vers le haut/bas dans le terminal ne fonctionne qu'en bash pas sh . Essayez de taper bash dans Terminal, et voyez si les touches fléchées fonctionnent. Si c'est le cas, vous pouvez aller dans les préférences et définir votre shell de connexion par défaut comme suit /bin/bash .

1voto

Knight71 Points 941

Pour ceux qui cherchent la touche Page Up/ Page Down au lieu de la flèche haut/bas. Utilisez les paramètres ci-dessous.

# Page Up/Down
"\e[5~": history-search-backward
"\e[6~": history-search-forward

Testé avec iterm et bash version 3.2

1voto

Martin Allert Points 898

Pour effectuer une recherche dans votre historique, vous pouvez également utiliser une fonctionnalité astucieuse du shell bash.

C'est peut-être un peu hors sujet, mais dans le shell bash, vous pouvez utiliser CTRL-R pour effectuer une recherche en arrière dans l'historique de votre shell.

Exemple - rechercher les connexions ssh dans votre historique :

tatooine-2257:~ mallert$
(reverse-i-search)`ssh': ssh mallert@localhost

Et lorsque j'appuie à nouveau sur CTRL-R, bash effectue une recherche dans les anciens résultats de recherche :

tatooine-2257:~ mallert$
(reverse-i-search)`ssh': ssh localhost

Et vous pouvez appuyer sur CTRL-R encore et encore. Vous pouvez également travailler avec des expressions régulières.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X