web-dev-qa-db-ja.com

zshで "破損した履歴ファイル"を修正して修復するには?

再起動後、シェルをロードするとメッセージが表示され始めました。

zsh: corrupt history file /home/myusername/.zsh_history

どうすればこの状況から回復し、潜在的に一部の履歴を回復することができますか?

99
gak

私の行方不明の歴史を復元しながら、私のために働くように見える修正を説明する ブログ記事 を見つけました:

mv .zsh_history .zsh_history_bad
strings .zsh_history_bad > .zsh_history
fc -R .zsh_history
163
gak

ランダムな文字を削除するだけでもうまくいくでしょう:

  • vim .zsh_history

  • おかしな文字を削除してください。 (私の場合、最後の2行目に強制シャットダウンの後に@の文字列がありました)

  • :x(保存して終了)

11
aksh1618