
Nach dem Kopieren einer neuen ausführbaren Datei nach PATH wird die Bash-Autovervollständigung für diesen Befehl problemlos aktiviert, aber zsh muss neu gestartet werden.
Wie kann ich die zsh-Autovervollständigung so einrichten, dass sie es erkennt, ohne die Shell neu zu starten? Kann sie es automatisch erkennen?
Antwort1
Wie kann ich die ZSH-Autovervollständigung dazu bringen, es zu übernehmen?
Verwenden rehash
:
rehash
berechnet die interne Hash-Tabelle des Inhalts der in der Umgebungsvariablen „Pfad“ aufgelisteten Verzeichnisse neu, um neu hinzugefügte Befehle zu berücksichtigen.
Ständige Wiederholung
Normalerweise findet compinit neue ausführbare Dateien nicht automatisch in
$PATH
. Wenn Sie beispielsweise ein neues Paket installieren,/usr/bin
werden die Dateien in nicht sofort oder automatisch in die Vervollständigung einbezogen. Um diese neuen ausführbaren Dateien einzuschließen, führen Sie daher Folgendes aus:$ rehash
Dieses „Rehash“ kann so eingestellt werden, dass es automatisch erfolgt. Fügen Sie einfach Folgendes in Ihre zshrc ein:
~/.zshrc zstyle ':completion:*' rehash true