Как восстановить потерянный в форме текст

UPD.
Поскольку инструкция была перенесена из песочницы, где она пролежала очень долгое время, она частично не актуальна, но работает, хоть и не так стабильно.
Если у вас браузер на базе хрониума (хром, опера, яндекс браузер, вивальди, амиго и т.п.), то меняйте кодировку дампа на utf-8.
Если у вас firefox на utf-16.
В остальном старайтесь совершать как можно меньше манипуляций с браузером после утери данных и как можно быстрее снять дамп. Желательно снимать дампы с первых 2-3 процессов сразу, если вам не удастся найти данные в первом дампе или они слишком фрагментированы ищите в следующих.
Ссылка на ветку с комментариями, где можно найти некоторую доп. информацию.

Как-то раз писал я большой текст по SEO на одном из профильных форумов, текст получился большим и дельным. По привычке время от времени отвлекаться от набора текста (будь эта привычка неладна), переключаясь между закладками оперы, я, не скоординировав движения руки, вдруг, непроизвольно воспользовался оперовским управлением мышкой (будь оно неладно) и... Да! Закладка выполнила команду «Назад»… И весь текст сгинул в небытие. В отчаянии, поняв, что текст потерян, что по ленивости своей новый я набирать не буду, прослыву лгуном, человеком не держащим слово и сгину неудачником на задворках цивилизации, хотел было закрыть браузер и пойти на улицу, топить уток в пруду. Но самообладание вернулось ко мне и я начал вспоминать то, чему учили меня в ВУЗе… Компьютерный эксперт я в конце концов или нет? К сути дела.

Восстанавливал я информацию потерянную в браузере опера, по сути из других браузеров восстанавливается аналогично. ОС — Win7. Ни каких особо профессиональных программ не используется, всё делается очень просто.

Если Вы закрыли браузер, то в дампе памяти вновь открытого браузера не будет набранного Вами текста. Браузер закрывать нельзя!

Может быть, когда руки дойдут, напишу как восстанавливать информацию из уже закрытого браузера.

Первичное решение пришло быстро: Снять дамп памяти с оперы и найти текст там. Матчасть структуры дампа я не помнил конечно, но вспоминалось мне, что информация из дампа барузера восстанавливалась быстро.

Итак, приступим.

Для начала нужно непосредственно снять дамп открытой оперы. Для тех, кто вдруг не знает, как снимать дамп памяти из Windows:



Снятый дамп весит, немного немало, кучу мегобайт! В моём случае он весил около 930мб. Понятное дело ни один текстовый редактор такую тушу не откроет. А блокнот и вовсе говорит, что файл «opera.dmp», цитата: "… слишком велик", видимо столь низкой программе, как блокнот, пылью бытия подошвы дампа осквернять и вовсе не положено. В общем, дольше всего я не мог понять чем открыть сие чудо. «Коллеги» на мой вопрос «Чем открыть текстовый файл весом в гигабайт?», сперва отвечали возмущением, мол «Сколько?!», а далее окончательным ответом «Не знаю» или советами скачать суперпрограмму «яоткроювсёчтоугоднокрометогочтотебенадо3000». Ну хорошо выучились, ничего не скажешь.

Озарение пришло неожиданно. Открывается такой файл через режим просмотра в Total Commander'е. В просмотре Вы увидите большой текст, в котором конечно же не найдёте ни слова по-русски. Но переключившись в юникод — «Options -> Unicode» увидите кучу китайских иероглифов, но не пугайтесь, Вы на верном пути! Жмёте Ctrl+F и вводите кусок потерянного текста, лучше если это будет как можно более уникальный кусок, а не общие слова типа «яндекс», «мороженное», «купил» и т.п.

Так же не забывайте, что текст скорее всего будет разорван и разбросан по дампу. Если Вы нашли кусок текста, а концовки у него нет, то скопируйте часть примыкающею к концу найденного куска и вбейте в поиск, возможно найдёте более длинный кусок текста. И помните, что восстановить текст полностью скорее всего не получиться, но большую часть найти удастся.

Кратко об этапах восстановления:

  1. Не закрываете браузер, открываете диспетчер задач.
  2. Снимаете дамп.
  3. Скачиваете и открываете Total Commander.
  4. Идёте в директорию (папку), в которой сохранили дамп, выделяя его жмёте F3.
  5. В открытом окне переключаетесь в юникод (Options -> Unicode).
  6. Ищете свой текст.

Далее Вы либо его находите, а следовательно ликуете и радуетесь, либо не находите, плачете, рвёте волосы на голове или груди, идёте в парк топить уточек в пруду. Или проверяете всё ли Вы сделали правильно, потому что скорее всего Вы что-то сделали не правильно… В этой жизни.

Спасибо за внимание!
Поделиться публикацией
Ой, у вас баннер убежал!

Ну. И что?
Реклама
Комментарии 37
  • 0
    Спасибо, даже мне, как человеку, который с компьютером на «Вы», этот рецепт понятен, коротко и ясно.
    Пару раз точно выручил бы меня за последний год.
    • +9
      с компьютером на «Вы»

      Какими судьбами вы здесь? Правда интересно.
      • +2
        Какими судьбами вы здесь?

        Гуглил проблему какую-то лет чуть менее десяти лет назад, ну вот и догуглился. С тех пор прокрастинирую тут/мозги разгружаю от рутины/новые слова узнаю.
    • 0
      А вы уверенны что CTRL+SHIFT+T не спасло бы ситуацию? Обычно текст в формах сохраняется, если вернуть вкладку таким путём
      • 0

        Автор же написал: "кнлпка назад", а не "крестик на вкладке"

        • 0

          Safari пару раз так восстанавливал текст в форме после нажатия «назад» и «вперёд». Но зависит от формы, видимо. Если что-то кривожабоскриптовое, то не восстановит, наверное.

      • 0

        Sublime Text вроде нормально открывает большие и очень большие файлы.

        • 0

          По моему опыту, "очень большие", причем бинарные- всё-таки не очень быстро.

          • 0

            Нужно смотреть, чтобы не включалась подсветка кода, она жрет очень много ресурсов. Даже если в файле нечего подсвечивать.

          • 0

            Sublime открывает, но придётся ждать (хотя он показывает прогрессбар). Ещё способ открытия — это любой hex-редактор. Они приспособлены для этого — читают файлы кусками и поэтому открывают моментально, и даже прокрутка (не поиск) не проблема.

          • +7
            FAR отлично справляется с любым размером файлов и поиском по ним потом — тоже.

            За рецепт — спасибо, может и пригодится.
            • 0
              FAR справляется даже лучше.

              Но тут есть такой момент — вместо всей статьи, можно было просто нажать кнопку «вперед». А если кнопка «вперед» не помогает, то и дамп не поможет, ибо вашего текста там скорее всего не будет.
              • 0
                Тут я не могу согласиться, ибо дамп памяти процесса содержит очень большой пласт данных, которые так просто и одномоментно не затираются. Время (и количество действий) прошедшее с момента «утери» до снятие дампа влияет на целостность и объём данных которые вы можете восстановить, но отрывочные части текста можно найти в дампе и через час после события, и намного позже.
                • 0
                  Я только что проверил, что на том браузере, на котором у меня после back — forward, содержимое поля пропадает — в дампе я не смог найти ключевое слово.
                  • 0
                    Скрин
                    скрин

                    Дамп
                    дамп


                    Оговорюсь, что данная инструкция уже довольно старая, ибо её достали из песочницы, это ещё великая опера на престо, если мне память не изменяет. Инструкция работает, но уже хуже (если можно так выразиться), чем ранее.
                    Тем не менее, говорить о том, что подобные данные пропадают из памяти не корректно, потому что немалая доля компьютерно-технических экспертиз касается именно вытаскиванию данных из памяти. Но в инструкции была оговорка о том, что никаких специальных средств и методик не используется, а потому много требовать от неё многого не приходится, безусловно 100% результата тут быть не может.
                    • 0
                      Вы в этой опере пробовали нажать forward после back? Текст остается?
                      • 0
                        Нет, это яндекс браузер, текст пропадает и при переходе, и при закрытие вкладки.
                        Опера на престо, это 12 опера (в инструкции именно она), которая не актуальная уже много лет, но с неё восстанавливать проще, там данные в подобном виде «висят» дольше. Но текст также пропадает.

                        Ссылка на видео (youtube)
                        Извиняюсь конечно за кривую кадровку и колхоз-обрезку, но было лень нормальное видео записывать
                        • 0
                          Тогда я начинаю предполагать, что все дело в браузерах. Firefox видимо сразу подчищает память (случайно или в целях безопасности).

                          Было бы хорошо потестировать вашу фичу на разных браузерах и добавить это в статью.
                          • 0
                            Ну как сказать, здесь тонкостей очень много, не только и не столько в браузере дело. Опять же повторюсь, что инструкция очень старая и в данный момент не столь стабильна, как была ранее, её нужно в принципе переписать полностью, но как бы делать мне это сейчас уже и некогда.

                            Ссылка на видео с тестом в firefox.
            • +1

              Несколько раз пользовался подобным рецептом, но на линуксах. Shift+Esc, смотрим номер процесса нужной вкладки, sudo gcore [номер процесса], далее грепом по ключевым словам из файла core.[номер процесса] достаем нужный текст.

              • +1

                Так и не понял, в чем проблема с кнопкой "Назад"


                Гифка

                • +1
                  Не всегда срабатывает
                  Гифка
                  image
                  • 0

                    По моему это срабатывает только на нативных textarea. Если они рисуются с помощью javascript или там вообще какой-нибудь CKEditor, то не прокатит.


                    Вообще если такая проблема периодически мешает жить, то с помощью userscript в браузере можно добавить подтверждение на хождение по истории и закрытие вкладок если на странице был введен текст в любые поля ввода.


                    Для некоторых CMS есть даже готовые решения: https://cgit.drupalcode.org/node_edit_protection/tree/node-edit-protection.js

                    • 0
                      Простите, но обе гифки были сделаны прямо тут, на хабре.
                      • 0

                        Хм, тогда видимо от браузера зависит. Второй — хром, а первый кто?

                        • 0
                          Второй — Firefox, первый — не мой. Возможно Хром.
                • +3
                  Хотя это больше про профилактику, но всё же: уже много лет как приучил себя, если в форме (необязательно браузера) введёно хотя бы несколько строчек текста, то при переходе на другое приложение, вкладку, или если надо отойти от компа — всегда делаю Ctrl A Ctrl C. Это уже настолько на автомате, что даже не задумываюсь. Привычка эта спасала не раз.
                  • +3
                    Согласен. Исправление собственных фейлов (ну у кого их не бывает!) — дело святое и часто даже полезное для расширения кругозора и арсенала полезных привычек.

                    От себя добавлю, что никогда не пишу что-то серьезное сразу в форме. Сначала — в редакторе с автосохранением, а потом уже результат копируется в форму. А то мало ли что
                    • +1
                      Я для себя сделал батник который делает в одном определенном каталоге уникальное имя типа такого 20180309_115450 и запускает far-овский редактор с этим именем. И повесил его запуск на горячую клавишу.
                      Надо сделать мелкую заметку, написать небольшой текстик или что-то из консоли сохранить — одно нажатие и набиваешь там. Потом в любой момент времени знаешь где искать такие твои микрозаметки.
                  • +4
                    Вообще-то как раз в опере, которая на престо, в таких случаях обычно помогало сделать «вперед» и она открывала окно ввода с набитым текстом.
                    Но потом форумные движки погрузились в бездны вебдваноля, аякса и прочих дизайнерских интерактивностей и да, это стало помгать далеко не везде…
                    • 0
                      Стоит ещё отметить, что Хабр не давал сохранить текст в поле до обновления.
                      • +1
                        Для Файрфокса, кажется, был плагин, который давал возможность восстанавливать текст, вводимый в формы. Но устанавливать его, естественно, нужно до того, как текст пропал.
                          • 0
                            Обычно объёмный текст (а не коммент, вроде этого) я пищу в текстовом редакторе а затем копипащу. Но так тоже можно)
                            • 0
                              Гигабайтные файлы без проблем открывал и редактировал FARом
                              • 0

                                Про просмотр больших файлов листером TC сразу тоже подумал. А вообще, помимо рефлекторного копипаста набираемого текста (Ctrl+A, Ctrl+C, о чём уже писали тут), ещё использую функцию ведения дневника в Punto Switcher. Не раз спасало после случайного закрытия не только вкладки браузера, но и закрывания окна мессенджера и т.п.

                                • 0

                                  Как не терять набираемый в формах FireFox текст?
                                  Установить расширение "Textarea Cache". надеюсь и для хрома есть решение.

                                  Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                  Самое читаемое