Estoy tratando de usar la finalización de tabulación para los comandos en Ubuntu 11.04 Beta 1, ejecutando todas las últimas actualizaciones, pero parece que no funciona. (Aunque el paquete bash-complete está instalado)
La finalización de tabulación funciona correctamente solo para directorios o archivos.
¿Alguna idea de dónde cavar?
bash
auto-completion
Screatch
fuente
fuente
Respuestas:
Comprueba si tienes el siguiente fragmento en tu .bashrc (debería estar allí de forma predeterminada)
fuente
bash-completion
es necesario para que esto funcione. Extrañamente, la instalación estándar de mi empresa no tiene este paquete.Pensé que también agregaría la siguiente explicación adicional para una falla en la finalización de bash: es demasiado largo para un comentario y puede ser útil para alguien que tiene un problema con la finalización de bash, ya que presumiblemente esta es la pregunta canónica 'general' a la que Todos los duplicados son referidos.
Incluso si tiene la línea apropiada en su
.bashrc
(como en la respuesta anterior) y elbash-completion
paquete instalado, la finalización de bash puede funcionar mal si tieneshopt -s nullglob
oshopt -s failglob
en su.bashrc
o.bash_aliases
.Los siguientes escenarios se probaron con todas las personalizaciones de los usuarios
.bashrc
y se.bash_aliases
eliminaron para proporcionar una prueba justa, con la línea de finalización de bash apropiada en el.bashrc
presente ebash-completion
instalada.1) El primer escenario es cuando tienes
shopt -s failglob
en tu.bashrc
o.bash_aliases
.Al intentar tabular directorios y archivos completos respectivamente, se producirán estos errores:
Sin embargo, los comandos aún se completarán con éxito.
2) Con
shopt -s nullglob
habilitado, intentar tabular un directorio o un archivo llevará a todo lo que aparece en la lista, sin finalización:He acortado el listado aquí, ya que era muy largo y no era necesario reproducirlo todo.
Una vez más, la finalización del comando seguirá funcionando sin embargo.
Por lo tanto, simplemente eliminar
shopt -s failglob
oshopt -s nullglob
también podría resolver el problema de los errores con la finalización de bash, suponiendo que tenga la línea adecuada en su.bashrc
ebash-completion
instalada.fuente
Además de modificar el
/etc/bash.bashrc
archivo (ver otras respuestas), es posible que deba instalar elbash-completion
paquete.Verifique si el
/etc/bash_completion
archivo existe. Si no:(En mi instalación de Debian 7 no se instaló inicialmente)
fuente
Tan básico como pueda parecer, asegúrese de que bash sea su shell activo
Acabo de actualizar a Ubuntu 14.04.1 LTS y no tenía autocompletado de pestañas, incluso después de seguir los consejos de esta publicación, solo para darme cuenta de que mi shell estaba configurado
/bin/sh
y no/bin/bash
.fuente
Actualización a Ubuntu 14.04.01
Comprueba si tienes el siguiente fragmento en tu .bashrc (debería estar allí de forma predeterminada)
sudo vim /etc/bash.bashrc (escriba "i" para editar el archivo)
Descomente 7 líneas arriba
Guardar archivo "esc + w + q + enter"
Reiniciar bash
ejecutivo bash
fuente