The Computer Oracle

How to fix and recover a "corrupt history file" in zsh?

Become or hire the top 3% of the developers on Toptal https://topt.al/25cXVn

--

Track title: CC C Schuberts Piano Sonata No 13 D

--

Chapters
00:00 Question
00:26 Accepted answer (Score 213)
00:52 Answer 2 (Score 30)
01:23 Thank you

--

Full question
https://superuser.com/questions/957913/h...

Accepted answer links:
[blog post]: https://web.archive.org/web/201508160738.../

--

Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...

--

Tags
#zsh #filecorruption

#avk47



ACCEPTED ANSWER

Score 217


Found a blog post describing a fix that appears to work for me, while restoring my missing history:

mv .zsh_history .zsh_history_bad
strings .zsh_history_bad > .zsh_history

Afterwards, you may want to instruct zsh to re-read the history form the recovered history file

fc -R .zsh_history



ANSWER 2

Score 31


Simply removing random characters may also work:

  • vim .zsh_history

  • Remove any strange characters, which would most probably be near the end. (In my case I had a string of @ in the second last line, following a forced shutdown)

  • :x (save and exit)