Cuando uso comandos en bash, me gusta la opción de doble pestaña para mostrar los comandos disponibles. Algunos comandos tienen más coincidencias posibles que otros:
¿Hay alguna forma en que pueda canalizar la salida de la doble pestaña a alguna parte, como grep
? Encontré una publicación relacionada , pero todavía no estoy seguro de cómo implementarla para canalizarla a grep.
grep
expresión regular?(y or n or g[rep])
? Odio sonar pesimista, pero dudo que esto se pueda hacer sin agregarlo al código bash.Respuestas:
Para comandos use
compgen -c
:Esta salida simplemente se puede canalizar
grep
.fuente
Basado en la respuesta de @ salutis, creé un script que llamé
comp
y almacené en las~/bin/comp
búsquedascommands
',aliases
ybuiltins
, (la opción marca-cab
ver la entrada bash man ), con un segundo parámetro opcional que, si está presente, canaliza la salidagrep
y busca el segundo parámetroCódigo:
Personalmente, también me interesaría encontrar una forma de eliminar el último comando del historial de shell en el script (algo relacionado con
history -d
) para que cuandobash
busque en el historial no encuentrecomp
entradas. Sé que también puedo hacer esto,HISTIGNORE
pero Linux es bastante poderoso, por lo que también debe haber una forma de hacerlo desde el archivo de script, ¿verdad?fuente
¿Por qué no encuentras lo que estás buscando?
Ejemplo:
Conociendo su caso de uso, puedo crear un ejemplo de comando más detallado.
fuente