Wenn ich tab tab
_
im Terminal bin , schlägt Bash 206 Möglichkeiten vor. Ich habe versucht, einen von ihnen zu _git_rm
leiten, aber nichts ist passiert. Was sind sie?
Hier ist ein Screenshot:
linux
bash
terminal
linux-mint
zeichnen
quelle
quelle
type _git_rm
wird Ihnen wahrscheinlich sagen, dass es eine Funktion ist.grep -R '_git_rm' /etc/bash_completion.d/
werde es wahrscheinlich finden. Diese Funktionen sind normalerweise diejenigen, die die verschiedenen Vervollständigungslisten zurbash
Vervollständigung bereitstellen .Antworten:
Diese Funktionen, deren Name mit einem Unterstrich beginnt, sind Teil der programmierbaren Vervollständigungs-Engine. Bash folgt hier der zsh-Konvention, bei der die Funktion
somecommand
aufgerufen wird_somecommand
, für die Vervollständigungen generiert werden , und wenn diese Funktion Hilfsfunktionen erfordert, werden sie aufgerufen_somecommand_stuff
.Diese Abschlussfunktionen tun normalerweise nichts Nützliches oder lösen einen Fehler aus, wenn Sie sie manuell aufrufen: Sie sollen von der Abschluss-Engine aufgerufen werden.
Dies folgt auf eine in verschiedenen Programmiersprachen weit verbreitete Praxis, einen führenden Unterstrich zu verwenden, um anzuzeigen, dass eine Funktion oder Variable in irgendeiner Weise in einer Bibliothek intern ist und nicht für den Endbenutzer (oder Endprogrammierer) bestimmt ist.
quelle