Essas funções cujo nome começa com um sublinhado fazem parte do mecanismo de conclusão programável. Bash segue a convenção de zsh aqui, onde a função que gera completações para somecommand
é chamada _somecommand
, e se essa função requer funções auxiliares, elas são chamadas _somecommand_stuff
.
Essas funções de conclusão normalmente não fazem nada útil ou geram um erro se você as chamar manualmente: elas devem ser chamadas a partir do mecanismo de conclusão.
Isso segue uma prática bastante difundida em várias linguagens de programação para usar um sublinhado à esquerda para indicar que uma função ou variável é de alguma forma interna a uma biblioteca e não é destinada ao usuário final (ou ao programador final). / p>