Beginnen Sie mit der Eingrenzung der Ursache des Problems, indem Sie Anpassungen im Verlauf von Bash entfernen. Zum Beispiel jeder Code, der Shell-Variablen festlegt, die mit beginnen HIST, oder verwendet set -o um entweder die history oder histexpand Shell-Optionen.
Der Befehlsverlaufscode pro Sitzung in /etc/bashrc_Apple_Terminal versucht, die Kompatibilität mit den Verlaufsvariablen von Bash aufrechtzuerhalten und zu erkennen, wenn der Benutzer wahrscheinlich etwas tut, mit dem er nicht kompatibel ist, und deaktiviert in diesem Fall den Mechanismus (weil der Benutzer etwas willkürliches tut, wie das Laden, Speichern oder Ändern der Geschichte). Wenn Sie jedoch Skripte haben, die das ausführen history Befehl, dieser Code hat keine Möglichkeit, im Voraus zu wissen; Sie müssen entweder Ihren Code aktualisieren, um die Kompatibilität mit dem neuen Sitzungsprotokoll aufrechtzuerhalten, oder das Sitzungsprotokoll durch Festlegen deaktivieren SHELL_SESSION_HISTORY=0 wie in der Dokumentation in beschrieben /etc/bashrc_Apple_Terminal.
Wenn Sie nicht anpassen HISTFILE, HISTTIMEFORMAT oder der histappend Eine weitere zu überprüfende Option ist, ob das oder die Shell-Startskripte geändert wurden PROMPT_COMMAND Variable oder die EXIT Trap, ohne den vorherigen Wert zu verketten, um zu vermeiden, dass er gelöscht wird.
Siehe die Kommentare in /etc/bashrc_Apple_Terminal Hier finden Sie eine Beschreibung, wie der Mechanismus funktioniert und wie er angepasst oder deaktiviert wird.