21 votos

Mejorar la funcionalidad de autocompletar Terminal (similar a Matlab ' s)

Si alguno de ustedes se ha utilizado Matlab, usted puede haber notado la ventana de comandos de funcionalidad en el programa. Me pregunto si es posible habilitar la misma funcionalidad en la Terminal de Mac.

Funciona de la siguiente manera: supongamos que usted ha usado dos comandos anteriormente en esta sesión de Terminal server. Primero se utilizó un cd ~ y, a continuación, un ls -la.

En todos los *nix terminal, incluyendo Mac, si se pulsa el Up Arrow, que va a mostrar primero el ls -la comando y, si se pulsa dos veces, la cd ~ comando. Esto es genial. Pero, en Matlab, si primero escriba la letra c y, a continuación, golpeó Up Arrow, no mostrará ls, pero en lugar de ir directamente a cd ~. Esto le ahorra un montón de tiempo cuando usted tiene grandes comandos y una larga lista de la que anteriormente se utiliza comandos.

Es posible?

29voto

Gerry Puntos 10709

En un shell de Bash, puede pulsar Control+R para hacer un reverse de búsqueda inteligente en la historia. Comience a escribir el comando y el shell de autocompletar con anterioridad los comandos introducidos.

A continuación, puede pulsar Enter para ejecutar el comando de nuevo, utilice la flecha izquierda o derecha para editar el comando, o seguir presionando Control+R para desplazarse a través de otros posibles terminaciones.

Reverse intelligent search

9voto

Guarde como ~ / .inputrc:

# make the up and down arrows cycle through commands that match the start of a line
"\e[A": history-search-backward
"\e[B": history-search-forward

Opción-para arriba sería \e\e[A y control-p \C-p . Puedes ver las secuencias de escape de otras combinaciones de teclas pulsando control-v.

2voto

M. Utku ALTINKAYA Puntos 1549

Otra cosa que puedes hacer es tipo ! y luego la primera letra y el más reciente. IE: cd ~ se puede acceder con!c

1voto

Artem Tikhomirov Puntos 4501

Esta es una característica de la cáscara. Control-R va a hacer lo que tú describes, pero cambiando a una cáscara más moderna te llevará mucho más. Echa un vistazo a Z-shell (zsh), hay un poco de una curva de aprendizaje, pero es muy potente.

0voto

Devon_C_Miller Puntos 126

Agréguelas a su .cshrc (si está usando tcsh)--

  bindkey -k up history-search-backward
  bindkey -k down history-search-forward

Entonces fuente ~/.cshrc para obtener exactamente la funcionalidad que describes.

No sé si hay un .profile equivalente.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X