3 votos

¿Cómo conseguir una función de autocompletado general del terminal?

Soy nuevo en MacOS y estoy usando MacOS Sierra,

En mi Ubuntu y otros sistemas basados en Linux, la terminal tiene un autocompletado que ayuda a completar los comandos y sus opciones.

Por ejemplo, para wget y otros comandos, además de la finalización del comando, después de pulsar Tab 2 veces, enumera todas las opciones de comandos (si las hay), o en sudo w lista todos los comandos que comienzan con w

Ubuntu terminal auto-compelete

Pero en mi Mac, sólo completa los primeros comandos y no ayuda para las opciones o la segunda parte del comando como whoami en sudo whoami ,

Quiero decir que no muestra una lista de todos los comandos que comienzan con who después de pulsar Tab 2 veces en sudo who

[ 2

He encontrado algunos scripts para git opciones en https://github.com/git/git/tree/master/contrib/completion/ pero quiero algo que haga esto para todos los comandos y aplicaciones.

¿Hay alguna solución para eso?

2voto

Rich Puntos 2429

La función de finalización no proviene de ningún Terminal aplicación o el sistema operativo en el que trabaja: MacOS X, Linux

Esta función es proporcionada por su shell. Para comprobar cuál es el que le proporciona la función de finalización que le gusta, sólo tiene que conseguir con qué shell está utilizando en Linux:

echo ${SHELL}

A continuación, cambiar su shell de inicio de sesión en MacOS X con:

chsh -s /bin/my_preferred_shell

para utilizar el que realiza la función de finalización que desea.

Comprueba que este shell existe y es ejecutable, y lee la documentación de chsh :

ls -ld /bin/my_preferred_shell

man chsh

Para probarlo sin riesgo, no reinicies tu sesión, sólo abre una nueva Terminal. En caso de error, podrá ejecutar chsh una vez más.

2voto

Como dijo @Mark, bash-completion añade esta funcionalidad a la terminal.

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