Vor kurzem hat mein Mac angefangen, mich nach einem Passwort zu fragen, nachdem ich es cd
in Terminal.app verwendet habe (habe keine anderen Term-Apps getestet).
seltsamerweise, wenn ich ctrl- drücke C, wenn das Passwort gefragt wird, verschwindet die Frage und ich bleibe in dem Verzeichnis, in das ich wollte cd
(wie man es erwarten würde).
Wie kann ich herausfinden, wofür dieses Passwort benötigt wird oder wie ich dies unterbinden kann? Ich benutzezsh
BEARBEITEN:
Das Terminal fragt in zufälligen Momenten nach einem Passwort für zufällige Verzeichnisse. Keine Ahnung von irgendwelchen Mustern. Die Ausgabe ist im Wesentlichen:
cd ~/Downloads
Password:
Ich denke, dies begann, nachdem ich JewelryBox.app installiert hatte
Sie können ausführen set -x
, damit zsh eine Ablaufverfolgung jedes ausgeführten Befehls ausgibt. Wenn ein Befehl von einer Funktion ausgeführt wird, wird der Funktionsname gedruckt. Ausführen set +x
, um das Drucken von Ablaufverfolgungen zu stoppen.
Wenn etwas passiert, wenn Sie den cd
Befehl verwenden, kann dies daran liegen, dass es sich um einen Alias oder eine Funktion handelt. Überprüfen Sie mit type cd
.
Zsh verfügt über eine integrierte Funktion zum Einhängen in den cd
Befehl, sodass Wrapper um den integrierten Befehl selten verwendet werden. Wenn die Funktion chpwd
vorhanden ist, führt zsh sie sofort nach dem Wechseln des Verzeichnisses aus. Überprüfen Sie, was die chpwd
Funktion mit tut which chpwd
.
Es gibt auch Hooks, die vor und nach jedem Befehl ausgeführt werden: die Funktionen preexec
und . precmd
Außerdem haben alle diese Hooks eine Array-Version, die ein Array von Funktionsnamen ist. Überprüfen Sie diese Arrays mit echo $chpwd_functions
, und wenn es eine Funktion gibt, sehen Sie sich ihren Code an.
kein Hang
cd
Befehlen auf oder nur bei bestimmten Verzeichnissen? Wenn die zweite, irgendeine Idee, was diese gemeinsam haben und/oder was sie von den anderen unterscheidet? Auch das Posten eines Screenshots (oder einer Textkopie) der Nachricht (und descd
Teils) würde einige Hinweise geben.Eir Nym
whence cd
,which cd
,echo $SHELL
. Es scheint, dass dieser Befehl anders ist als eingebautRomeovs
echo $SHELL
gibt/bin/zsh
undwhich
sagtcd: shell built-in command
.whence cd
sagt nurcd
. Ich erinnere mich, dass es einezsh
Sache gibt, die Sie aktivieren können, um alle Befehle zu sehen, die ausgeführt werden, wenn Sie etwas tun,xset
oder so etwas, aber ich kann mich nicht genau erinnern, was.Romeovs
set -x
das war es.cd
-ing in ein Verzeichnis gibt eine Menge Zeug aus, einschließlich vieler Verweise auf rvm, Rubine, ... also denke ich, dass der Übeltäter JewelryBox oder eines seiner installierten rvms sein muss.zwerdlds