Digamos que tengo 3 archivos en un directorio particular:abc.txt, aww.txt, ant.txt
Si lo hago:cat a
(y presione el tabulador para ver las opciones) la terminal mostrará los 3 nombres de archivo:abc.txt, aww.txt, ant.txt
¿Hay alguna forma de seleccionar el resultado n 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
)?
Respuesta aceptada:
Suponiendo que está utilizando bash, agregue lo siguiente a su ~/.bashrc
:
bind '"e[6~": menu-complete'
bind '"e[5~": menu-complete-backward'
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 ~/.inputrc
que contiene:
$include /etc/inputrc
"e[6~": menu-complete
"e[5~": menu-complete-backward
Ahora, cuando abra una nueva terminal, puede presionar:
- TABULACIÓN como de costumbre para ver las finalizaciones disponibles.
- Nombre de página para seleccionar la primera finalización o cambiar a la siguiente.
- Re Pág para seleccionar la última finalización o cambiar a la anterior.
- Alt +n Pág Dn para seleccionar la n-ésima finalización o avanzar n completaciones.
Entonces, para su ejemplo, escriba Pg Dn Nombre de página o Alt +2 Nombre de página para obtener el segundo archivo aww.txt
.