Cygwin Command History
Mittwoch, 12. Januar 2011 | Autor: Nico
Ich benutze privat Windows1. Trotzdem hat man ja gelegentlich Bock auf ein Linux-Terminal. Ich benutze da Cygwin - das ist einfach zu installieren und läuft problemlos. Fast zumindest. Es vergisst leider beim Schließen die Command History2. Dieser Thread hat mich dann auf folgendes gebracht:
$ echo $HISTFILE /home/Nico/.bash_history $ ls -a . .bash_profile .links Kiwi_3d_MRT_endless.gif .. .bashrc .ssh .inputrc CloseKugel
A-ha! .bash_history
existiert schlicht noch nicht! Legen wir es kurz an3:
$ cat > .bash_history
Fertig!4 Cygwin erinnert sich jetzt sessionübergreifend an unsere Befehle!
Update: Ich weiß nicht, ob es an der letzten Aktualisierung lag oder ich es vorher nur nicht bemerkt habe: Das eigentliche Problem liegt darin, dass man Cygwin mittels exit
beenden muss, statt das Fenster einfach zu schließen. Tut man letzteres, schreibt Cygwin die aktualisierte .bash_history
offenbar nicht mehr auf die Platte - das führt dazu, dass beim nächsten Start eine neue, leere, .bash_history
anlegt wird.
Man kann Cygwin, genauer gesagt bash, aber so einstellen, dass es nach jedem ausgeführten Befehl die History speichert! Dazu muss man in der .bashrc die zweite der folgenden Zeilen einkommentieren5
# Whenever displaying the prompt, write the previous line to disk # export PROMPT_COMMAND="history -a"