Cuando voy a cualquier carpeta a través de cd
y luego presiono tab
, se muestra una lista completa de opciones. ¿Cómo hago el autocompletado local en la carpeta?
Si solo quieres ver los binarios en la carpeta actual, presiona ./tab
(pestaña de barra de puntos).
Si desea ver todas las carpetas en la carpeta actual, presione cd tab
En tu captura de pantalla, al presionar m tab
se muestran todos los binarios que comienzan con m que se encuentran en la ruta.
En todos los casos, al presionar la pestaña una segunda vez se mostrarán todas las coincidencias si hay más de una.
Estás buscando bash-completion
. Esta publicación describe cómo obtenerla (tl; dr: para una instalación fácil, necesitará un administrador de paquetes como Homebrew o MacPorts) por ejemplo:
brew install bash_completion
Con bash-completion
, escribir cd
y luego tabular los resultados que obtienes debe estar limitado a las carpetas.
Fuera de la caja bash-completion
cubre una amplia gama de posibles terminaciones, pero puede haber más: verifique su administrador de paquetes. Por ejemplo, en Homebrew intente esto:
brew search completions
Esto devuelve terminaciones adicionales para herramientas macOS como open
y launchctl
, herramientas de virtualización como docker
y vagrant
, y muchos otros.
Usted puede crear sus propias terminaciones, por ejemplo, uso este para mostrarme solo .png
archivos para un script ( png2icns
) que piraté juntos.
complete -f -X '!*.png' png2icns
Sin embargo, esto realmente no es necesario para la mayoría de los casos: bash-completion
cubrirá todos los usos comunes.
Para completar, necesito mencionar que los fanáticos de zsh
shell sin duda le dirán que el soporte de zsh
para completar es muy superior a bash
's. Personalmente, bash
hace lo que necesito, aunque con un poco de ayuda de brew
.
Lea otras preguntas en las etiquetas terminal bash command-line