Filtrado de carpetas iterativo interactivo en bash

Filtrado de carpetas iterativo interactivo en bash

Digamos que tengo una estructura de carpetas profunda como:

/home/user1/Pictures/web/flickr/2023/02/02/pic.jpg

En cada paso obviamente hay diferentes carpetas. Por ejemplo, en la parte superior hay

/etc
/home
/usr

Y qué no. Luego, en /home hay cosas como:

/home/user1
/home/user2
/home/user3

Luego, en /home/user1 hay cosas como:

/home/user1/Downloads
/home/user1/Pictures
/home/user1/Videos

y así sucesivamente, entiendes la esencia. ¿Existe alguna forma de filtrar carpetas de forma interactiva para llegar a una carpeta o archivo hoja? Por ejemplo, me gustaría hacer algo como:

$ vim /

luego Tab, haga que enumere todas las terminaciones de nivel superior (etc., home y usr en el ejemplo anterior). Entonces si escribí

$ vim /h

debería mostrar sólo aquellos que contengan letras h(/home en el ejemplo anterior). Si es el único, completaría la opción única, por lo que obtendría:

$ vim /home/

y luego haga que enumere todas las opciones en /home (usuario1, usuario2 y usuario3 en el ejemplo anterior). Ahora, si escribo 1, se reducirá a:

$ vim /home/user1/

ya que esa es la única opción que podría igualar.

Sé que bash se completó, pero no estoy seguro de si existe algo como esto. ¿Alguna pista?

información relacionada