So finden Sie Verzögerungen beim Starten eines neuen Terminals (iTerm)

Wenn ich CMD+N in iTerm2 drücke, um ein neues iTerm-Fenster aufzurufen, dauert es manchmal 10 Sekunden, bis ich meine Eingabeaufforderung erhalte. Wiederhole ich den Vorgang sofort, dauert das Ganze 1 Sekunde. Für mich bedeutet dies, dass es sich um ein langsames Lesen einer Datei handelt, die dann im Speicher zwischengespeichert wird. Ich habe eine Timing-Anweisung in mein .bash_profile eingefügt und das dauert ungefähr eine Sekunde, also habe ich es nicht manuell und absichtlich getan, um es zu verlangsamen.

Wie soll ich herausfinden, wo die Zeit während der Shell/Terminal-Initiierung verbracht wird?

Ich habe versucht, auszuführen sudo fs_usage -f filesys > fsusage.txtund dann in der resultierenden Datei nach loginund bashund zu suchen iTerm, konnte aber nicht feststellen, was die Verzögerung dort verursachen könnte.

Haben Sie versucht, den Anmeldebefehl in zu ändern login -pfq username? (Der Symlink-Hack wird für iTerm nicht benötigt.)
Beim Durchsuchen der fsusage.txtobigen Erfassung scheint es, dass das Laden der HomeBrew bash_completion-Datei einige Sekunden dauert ...

Antworten (2)

Ich hatte das gleiche Problem und habe die Aktualisierung der Einstellung behoben in:Profile/General

Die Möglichkeit Command:

Stattdessen Login shellkönnen Sie die Option auswählen commandund Ihren Shell-Pfad schreiben. In meinem Fall zsh:/bin/zsh

Sie können dies tun: which -a bashoder which -a zshin meinem Fall

Sie sollten auch im Abschnitt Console.app < ​​system.log nachsehen, ob es ein Fehlerprotokoll gibt, das Sie auf die Ursachen des Fehlers hinweisen könnte.

Verhält sich Terminal auch gleich? Haben Sie versucht, die Einstellungen von iTerm mit einer App wie Appzapper zu löschen, um zu prüfen, ob es ein Problem damit gibt?