История Bash повреждается после потерь мощности

Я перешел к хранилищу и когда я возвратился, я нашел, что забыл включать свой ноутбук, и Это умерло от низкого уровня заряда. Когда я перезагрузил, я был удивлен найти, что моя история удара, вместо содержания моих терминальных команд, теперь была похожа на это:

don@don-Dell-PowerbookBook-777w:~$ �$6:�P!^G����^^B)A|E1����t^E���@=(�|0H�^N�s����+�����C�Ώ)p��s�  pn�ǡ!�ǝ\��"^H�n^M^Rs��$u�^[���^S����![�0^R&^R���@��T���v��8^T^N��^ZJ�O�*�Y$:�A�^[6��jٸ�EIl>��^L�ژ���^^^Xw^T^[��/^Q^Aw       ߨ~�>���s"�6d��^\�U%�a^M/p^P��iޠ��\^M^Z^9��^_l�]*�Ų���J͜��^UK�u�  ����N^S���^G5^B^D�p^^^E��4�&�Qi�^U^?�T^T��- 

И когда я работал gedit .bash_history, Я получил это:

Была проблема, открывающая файл “/home/dave/.bash_history”.

Файл, который Вы открыли, имеет некоторые недопустимые символы. Если Вы продолжаете редактировать этот файл, Вы могли бы повредить этот документ. Можно также выбрать другую кодировку символов и попробовать еще раз.

Кодировка символов: текущая локаль (UTF-8)

и затем:

\D3Q\F6 \98ڵ\9B\A8a\9B\97\C7׬\A2\B5\F7\B0,.\B4\FD\E4N\A9͈\FEK\EF蓪*,q\D5HbI\C6!iB\BC\D33\A7\C5\EC\E3\\AE|\D1<%Hx9a\FEI\BE\93f\84\92\C1\AF\B7Ed,6DI<\B5\F9* t\00\DB]PZ\AE\EB\D2\A1e\8C\D4\F8\B4'\8A\CD\00F-\89\CBs\FD;k\CBUv\E1\F8߱y\D0;\BB\9E ůLteE\94\9B\D1\00\E7\CF)\\E51,\9C\81}\E6\96=\C7l\D8v.#s\CE\D5\C2%2\8EZ\93\93<\DD'oIKl.\CC81~\80\DC\F9\A5ȡ@6\E0\DA\F8\92j%\D2;: b(\BE\F5Dv\86\CD"\A0vCc\EC\A2\F8oP\88\CEG\ED~y\866\B9\AF\BF\BF\DC}\8F\94\CF\DB\C9\D6\DC\D9\E7\E4\DC-\94H\B3\A7\F3\DF\EB\9DS+\E5\C8 \81p\8FK\E2\88h\E7f \A8\809\B4 \FBo}&aa\FA;\B7q\E8\8D\DE\B5 \B5\DE{\EB\A3\F9D\BB\E8 \80\A0\FA\F2\F6\A2\BB\C6\D1\CEaN?*H8\91\BD\B83y\FF\BA)\DDl)\87vn\97D\EF\EEOS\F5\FB\B0U\83\94\E7D\E0:\A3R\94\EC\B9O\D9wr^D,Q\8B2\C1\9A;l\9Db\86@C*$\D4=\B7v\86ۉ\85\B5\D0g\85 \C0{Cb\EA;\ACK\87q\FE\BA\83\B7\86\C0\DF

Для сотен на сотни строк. Там должен так или иначе спасти это, или я должен просто стиснуть зубы и удалить все это?

1
задан 28 September 2016 в 06:17

2 ответа

Я получаю это время от времени, и обычно я просто уничтожаю файл, потому что поврежденный файл обычно очень тверд если не невозможный восстановиться.

проблема состоит в том, что данные, кажется, были повреждены. Который объясняет случайный шестнадцатеричный код, unicode символы, и т.д. появляясь, когда Вы ожидаете читаемый текст. Повреждение данных как это обычно неисправимо, поэтому если Вам действительно не нужна Ваша полная история команд, Вы работали, Вы могли бы просто хотеть стиснуть зубы и стереть файл, таким образом, это может запуститься.

можно также переименовать файл для хранения содержания, при необходимости но данные остаются поврежденными и вероятными неисправимый.

1
ответ дан 7 December 2019 в 15:48

Попробуйте

tr < {original_file} -d '\000' > {backupfile}

Источник: https://askubuntu.com/a/738854/600169

кроме того, кажется, что zsh лучше в обработке этого, чем удар. Это обычно получает только одну поврежденную строку. Я не могу найти определенные источники для меньшего повреждения в zsh, но это действительно имеет лучшие функции истории в целом.

0
ответ дан 7 December 2019 в 15:48

Другие вопросы по тегам:

Похожие вопросы: