Ao executar o complete
comando no meu gnome-terminal, ele mostra alguns comandos. O que são? E qual é a utilidade do complete
comando?
$ complete
complete -F _minimal
complete -F _filedir_xspec oodraw
complete -F _filedir_xspec elinks
complete -F _filedir_xspec freeamp
complete -F _longopt split
complete -F _longopt sed
complete -F _longopt ld
complete -F _longopt grep
complete -F _service /etc/init.d/vboxweb-service
complete -F _service /etc/init.d/vboxballoonctrl-service
complete -F _service /etc/init.d/rc
complete -F _service /etc/init.d/nmbd
complete -F _service /etc/init.d/halt
complete -j -P '"%' -S '"' jobs
complete -d pushd
Lista vai longa, então eu postei alguns deles.
command-line
bash
Avinash Raj
fonte
fonte
help complete
Respostas:
complete
é uma função interna do bash. Portanto, não há um binário no sistema. Ele lida com como os comandos serão concluídos ao pressionar tab.Exemplo: se você digitar:
... uma lista está aparecendo com todos os valores possíveis para este comando. Nesse caso, significa todos os processos em execução. Veja a saída da
complete
função:Isso significa que a função
_pgrep
(-F) é executada ao tabular o comandopidof
. A definição desta função está em/etc/bash_completion.d/procps
.Outro exemplo: se você digitar:
... você vê a lista de pastas que puder
cd
para menos/usr/
. Qual função é executada? greping acomplete
função (como acima) nos diz que é o funtction_cd
no/etc/bash_completion
.Faça você mesmo : você tem um programa / script chamado
/bin/myprog
e deseja que, se o executar da seguinte maneira... deve listar apenas pastas, não arquivos. Portanto, estenda sua conclusão do bash com o seguinte comando:
É isso aí. Você também pode escrever funções próprias para concluir itens personalizados, por exemplo, concluir apenas arquivos ou números específicos ou listas de valores estáticos ...
fonte
complete
é um comando bash usado para executar a ação de preenchimento automático quando o usuário pressiona a TABtecla em um terminal.A chamada apenas
complete
listará todas as funções registradas para o preenchimento automático de opções de comandos ou serviços.Nas páginas do manual do bash:
Verifique
/usr/share/bash-completion/bash_completion
para ver as conclusões padrão que acompanham o bash.Visite http://www.linuxjournal.com/content/more-using-bash-complete-command para obter um tutorial completo sobre esse comando.
fonte