Когда я tab tab _в терминале, Bash предлагает 206 возможностей. Я пытался запустить один из них, _git_rmно ничего не случилось, что они?
Вот скриншот:

Когда я tab tab _в терминале, Bash предлагает 206 возможностей. Я пытался запустить один из них, _git_rmно ничего не случилось, что они?
Вот скриншот:

Ответы:
Эти функции, чье имя начинается с подчеркивания, являются частью программируемого механизма завершения. Bash следует конвенции ЗШ здесь, где функция , которая генерирует автозаполнения somecommandназывается _somecommand, и если эта функция требует вспомогательных функций, они называются _somecommand_stuff.
Эти функции завершения обычно ничего не делают или не вызывают ошибку, если вы вызываете их вручную: они предназначены для вызова из механизма завершения.
Это следует из довольно распространенной практики в различных языках программирования, чтобы использовать начальное подчеркивание, чтобы указать, что функция или переменная каким-то образом являются внутренними по отношению к библиотеке и не предназначены для конечного пользователя (или конечного программиста).
type _git_rmвероятно скажу вам, что это функция.grep -R '_git_rm' /etc/bash_completion.d/вероятно найдет это. Этими функциями обычно являются те, которые предоставляют различные спискиbashзавершения для завершения.