Ao usar comandos no bash, gosto da opção de guia dupla para exibir os comandos disponíveis. Alguns comandos têm mais correspondências possíveis do que outros:
Captura de tela da conclusão de uma guia http://img13.imageshack.us/img13/5541/picturemhy.jpg
Existe uma maneira de canalizar a saída da guia dupla para algum lugar, como grep
? Encontrei um post relacionado , mas ainda não tenho certeza de como implementá-lo para canalizá-lo para grep.
grep
regex?(y or n or g[rep])
? Detesto parecer pessimista, mas duvido que isso possa ser feito sem adicioná-lo ao código do bash.Respostas:
Para comandos, use
compgen -c
:Essa saída você pode simplesmente passar
grep
.fonte
Com base na resposta de @ salutis, criei um script que chamei
comp
e guardei nessas~/bin/comp
pesquisascommands
',aliases
ebuiltins
, (sinalizador de opção,-cab
veja a entrada bash man ), com um segundo parâmetro opcional que, se presente, canaliza a saídagrep
e pesquisa o segundo parâmetro.Código:
Pessoalmente, eu também estaria interessado em descobrir uma maneira de remover o último comando do histórico do shell no script (algo relacionado a
history -d
) para que, ao pesquisar nobash
histórico, não encontrareicomp
entradas. Eu sei que também posso fazer isso,HISTIGNORE
mas o linux é bastante poderoso, portanto deve haver uma maneira de fazer isso a partir do arquivo de script também - certo?fonte
Por que não encontrar o que procura?
Exemplo:
Conhecendo seu caso de uso, posso criar um exemplo de comando mais detalhado.
fonte