Busque en el historial de la terminal con las teclas arriba y abajo en OS X Lion

Después de actualizar a OS X, no puedo usar mis enlaces ~/.inputrc para buscar en el historial de comandos de 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

¿Alguna idea de lo que tengo que cambiar o hacer? ¿Hay alguna clave predeterminada que pueda usar?

No sé qué podría estar mal, pero para comparar, mi .inputrc tiene los mismos enlaces que el tuyo y funcionan (Mac OS X Lion 10.7.1). De hecho, si elimino mi .inputrc por completo, las teclas de flecha seguirán funcionando, ya que de forma predeterminada se asignan a comandos de historial similares, como se muestra en bind -P. ¿Qué sucede con las teclas de flecha arriba/abajo si elimina (o cambia el nombre) de su archivo .inputrc?

Respuestas (3)

El desplazamiento hacia arriba/abajo del historial en la Terminal solo funciona en bash, no en sh. Intente escribir bashen Terminal y vea si las teclas de flecha funcionan. Si este es el caso, puede ir a preferencias y configurar su shell de inicio de sesión predeterminado en /bin/bash.

Para aquellos que buscan la tecla Re Pág/Av Pág en lugar de la flecha arriba/abajo. Use la configuración a continuación.

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

Probado con iterm y bash versión 3.2

Para buscar en su historial, también puede usar una característica ingeniosa del shell bash.

Esto puede estar un poco fuera de tema, pero en bash shell puede usar CTRL-R para buscar hacia atrás en su historial de shell.

Ejemplo: busque conexiones ssh en su historial:

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

Y cuando presiono CTRL-R nuevamente, bash realiza una búsqueda dentro de los resultados de búsqueda anteriores:

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

Y puedes presionar CTRL-R una y otra vez. También puede trabajar con expresiones regulares.