Digamos que tengo 3 archivos en un directorio particular: abc.txt, aww.txt, ant.txt
Si lo hago: cat a
(y presiono la pestaña para ver las opciones) el terminal mostrará los 3 nombres de archivo:abc.txt, aww.txt, ant.txt
¿Hay alguna forma de seleccionar el enésimo resultado en lugar de escribir, especificando el número de índice en los resultados que muestra el terminal?
algo como: cat a2
para obtener el segundo archivo ( aww.txt
)?
bash
auto-completion
samsamara
fuente
fuente
ant.txt
). También se puede configurar para que sea posible iterar hacia atrás para una mejor navegación. Sin embargo, eso obviamente implica cambiar el shell a Zsh. Si consideras que es una alternativa lo suficientemente buena, puedo escribir una respuesta para eso.Respuestas:
Suponiendo que está utilizando bash, agregue lo siguiente a su
~/.bashrc
:O para cambiar los valores predeterminados para todos los programas que usan la biblioteca de finalización de línea de lectura, no solo bash, cree el archivo que
~/.inputrc
contiene:Ahora, cuando abra una nueva terminal, puede presionar:
Entonces, para su ejemplo, escriba Pg DnPg Dno Alt+ 2Pg Dnpara obtener el segundo archivo
aww.txt
.fuente
cd
y desplazándose por los directorios. ¿Qué tecla presionas para "elegir" ese directorio y comenzar a cambiar el contenido de ese directorio? ¿Hay otra cosa para establecer / vincular?bind '"\e\20": menu-complete-backward'
ybind '"\e\16": menu-complete'
.