Ich benutze Emacs für fast alles, aber wenn ich Shell M-x shell
starte und dann Emacs beende, wird der Verlauf nicht gespeichert. Ich habe es (savehist-mode 1)
zu diesem Zweck versucht, aber es scheint nicht zu funktionieren. Gibt es eine Möglichkeit, den Verlauf der zu speichern? Befehle in Emacs verwendet und verwenden, wenn ich Shell außerhalb von Emacs verwenden?
M-x shell
und wenn ich den Puffer töten sie nicht die Geschichte speichern, ich der einzige Versuch tat , war, legte (savehist-mode 1)
in .emacs
Datei aber immer noch kann ich nicht Siehe die Befehle in emacs
savehist-mode
Gilt standardmäßig nur für die Minipuffereingabe und ist daher hier nicht anwendbar (obwohl Sie es allgemein nützlich finden könnten). Höchstwahrscheinlich ist dies Ihre Anmeldeshell bash
, und ich habe häufig festgestellt, dass der Verlauf standardmäßig bash
erst gespeichert wird, wenn der Prozess ordnungsgemäß beendet wird, dh beim Abmelden. Dies geschieht nicht, wenn Sie den Shell-Puffer mit C-x k
oder ähnlichem beenden. In diesem Fall wird der Shell-Prozess beendet und nicht automatisch beendet. Wenn Sie das gerade tun, versuchen Sie es mit logout
oder exit
in Ihrem Shell-Puffer, bevor Sie den Puffer löschen, und prüfen Sie, ob der Verlauf gespeichert wird.
ps -p $$
über die Befehlszeile bestimmen . Der Wert unter 'CMD' in der Ausgabe ist der von Ihnen verwendete Shell-Wert. Höchstwahrscheinlich ist dies der Fall bash
. Wenn dies nicht der Fall ist, fügen Sie einen Kommentar hinzu, um anzugeben, um was es sich handelt und vielleicht kann Ihnen jemand von dort aus bash
weiterhelfen - ich benutze nur mich selbst, kann also nicht viel helfen, wenn Sie etwas anderes verwenden.)
~/.bash_history
, wiebash
in einem gewöhnlichen Terminal-Emulator gespeichert werden . Ich bin mir nicht sicher, warum Sie ein anderes Verhalten sehen würden. Welche Shell laufen Sie und wie ist sie in Bezug auf die Geschichte konfiguriert?