|
|
Auto-Completar en terminales BASH con tecla TAB |
|
|
Autor: linuxcpp _
URL
_
Tb ()
_
Categorias: LINUX- Utilidades
|
AUTO-COMPLETAR en terminales
BASH con tecla TAB
BASH con tecla TAB
La utilidad de auto-completar en terminales BASH es de sobra conocida y una utilidad muy interesante. Por poner un ejemplo de uso, supongamos que queremos escribir el comando gimp 04042008478.jpg; lo que haríamos es escribir en el terminal los primeros caracteres del comando (gim por ejemplo) y pulsar 2 veces seguidas la tecla TABulador, completando directamente el comando a gimp, o mostrando en su defecto los comandos disponibles que comienzan por esas combinaciones de letras. De igual modo, para la segunda palabra que sería una imagen del directorio en el que nos encontramos podríamos empezar a escribir los primeros caracteres (04 por ejemplo), y automáticamente se mostrarán aquellos archivos (habitualmente sólo formatos de imágenes válidos) del directorio que comiencen con esos caracteres. Esto es sin duda una de las principales ventajas que tienen los terminales BASH de sistemas UNIX.
A continuación veremos como se activa y desactiva esta opción, así como podemos configurarlo personalizándolo a nuestro gusto.
Para configurar el auto-completar de BASH usaremos la sentencia complete, tal y como veremos en el siguiente ejemplo:
complete -f -X ’!*.@(sxw|stw|sxg|sg1|doc|dot|rtf|txt|htm|html|odt|ott|odm)’ oowriter
Donde:
La opción -f significa que se intenta auto-completar con nombres de ficheros.
La opción -X especifica que a continuación se le pasa un patrón del nombre de dichos ficheros.
A continuación se pasa el PATRÓN (Entre comillas simples ’): El carácter ! representa que cuando se finalice el nombre del fichero, se estarán eliminando los términos que no combinen con el patrón. La expresión *.@(extensiones) significa cualquier término será aceptado siempre y cuando tenga una extensión seguida de un punto que sea válida. Lo que va entre paréntesis nombrado como expresiones serían aquellas extensiones válidas separadas por el carácter de unión |.
Por último, el nombre oowriter especifica el comando al cual se aplica todo el contenido de esta línea.
Con este ejemplo lo que conseguimos es que cuando en un terminal BASH escribimos oowriter FICHERO, y ese FICHERO intentamos auto-completarlo con la tecla de tabulación, sólo mostrará aquellos nombres de ficheros válidos que se ajusten a dicho patrón, es decir, sólo formatos de texto válidos que puedan ser abierto con el programa oowriter.
Conociendo el funcionamiento de esta instrucción, podemos modificar a nuestro antojo la configuración de los auto-completar, añadiendo nuevos formatos para ciertos programas, añadiendo configuración para nuevos programas, etc. Además de configurar auto-completar para nombres de ficheros podemos configurar otro tipo de eventos como nombres de rutas, variables... y que podeis encontrar explicado en esta web.
Podríamos tener configuradas tantas líneas de este tipo como deseáramos, una para cada programa por ejemplo, lo que es un engorro si lo tuviéramos que hacer nosotros. La habitual es que la configuración ya la tengais en vuestro sistema, pudiendo modificar su configuración si lo deseáramos, siendo la ruta más probable para esta configuración el fichero /etc/bash_completion, pero en todo caso en la web arriba mencionada podeis descargar el paquete con este fichero.
Cuando arrancamos un terminal BASH, lo primero que hacemos es cargar el fichero /etc/bash.bashrc que será el sitio más habitual para localizar las sentencias que activan el funcionamiento del auto-completar, y que son las que a continuación se muestran. En caso de querer desactivar la opción de autocompletar bastaría con comentar o eliminar dichas líneas de este fichero. El código que permite activar el auto-completar en terminales BASH es:
if [ "$PS1" -a -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
Añadir este código en este fichero implica que a todos los usuarios del sistema se le habilite esta opción, lo que suele ser lo más común. Sin embargo, si deseamos tener una configuración más específica para cada usuario podemos añadir estas líneas en el fichero $HOME/.bashrc (que es un fichero propio para cada usuario del sistema), y de este modo sólo afectaría al usuario correspondiente.
|
|
Comentarios (2)
Menéame
Barrapunto
Technorati
Google Bookmarks
Fresqui
del.icio.us
VOTACIÓN:
(Núm. votos: 14)
|
|
RESPUESTA A Auto-Completar en terminales BASH con tecla TAB |
|
|
Autor: Luis Ramon _
URL
_
Tb ()
_
Categorias:
|
|
|
RESPUESTA A Auto-Completar en terminales BASH con tecla TAB |
|
|
Autor: Santiago _
URL
_
Tb ()
_
Categorias:
|
~/djview4 doc
sino que debo ingresar primero a la carpeta y después sí funciona... ¿Sabes cómo solucionar eso?
Gracias de todos modos.
|
|
Escribe tu comentario |
Usuario de eXtreblog (sí/no)









Autor: 
Categorias: 