Accidental Closure Prevention
I closed Chrome by accident.
Yes, unfortunately the devs have chosen not to build in a prompt to prevent this. Będziesz musiał podajnik niektóre z rozszerzeń, które zostały napisane, aby poradzić sobie z tym i wybrać jeden, który ci odpowiada (niestety, ze względu na projekt Chrome, rozszerzenia będą musiały zachować dodatkowe kilka procesów uruchomionych do pracy).
Zapobieganie utracie danych
Teraz wszystkie karty, które miałem otwarte są prawdopodobnie już nie ma. Nie chcę ryzykować niczego, uruchamiając Chrome teraz, zanim poproszę o pomoc. Obawiam się, że jeśli to zrobię, zostaną one trwale utracone (nadpisane pliki).
Bardzo sprytne. Masz rację, że uruchomiony Chrome prawdopodobnie usunie je wkrótce potem, ponieważ jest zaprojektowany tak, aby oprócz bieżącej, działającej kopii zapasowej zachować tylko jeden zestaw kopii zapasowych, więc kiedy uruchomisz nową instancję, cofnie ona wszystko do tyłu i zastąpi poprzednią.
Wiem z wcześniejszych doświadczeń z Firefoxem, że przywracanie kart i sesji przeglądarki może być trudnym biznesem.
Z Chrome'em też nie jest przyjemnie, ale przeprowadzę Cię przez ten proces (musiałem to robić zbyt wiele razy).
Session Files
Co mogę zrobić w tym momencie? Czy jest jakiś plik lub coś, co muszę skopiować lub zmienić jego nazwę?
Yes, they are the following four files in your User Data Directory :
Current Session
(zawiera dane z formularzy na stronach w bieżącej sesji)
Current Tabs
(zawiera listę adresów URL dla kart w bieżącej sesji)
Last Session
(taki sam jak Current Session
, ale dla poprzedniej sesji)
Last Tabs
(taki sam jak Current Tabs
, ale dla poprzedniej sesji)
(Zauważ, że termin “sesja” oznacza tutaj rundę uruchamiania Chrome od nowa. Oznacza to, że jeśli otworzysz Chrome, gdy nie ma absolutnie żadnych przypadków uruchomienia chrome.exe
(sprawdź Task Manager, aby się upewnić), wtedy rozpoczynasz sesję. Jeśli zamkniesz wszystkie karty w oknie, ale masz inne okno Chrome z otwartą kartą, wówczas ta sesja jest nadal aktywna, więc ponowne uruchomienie Chrome nie będzie nową sesją. Podobnie, jeśli Chrome zawiesi się i zamkniesz wszystkie okna, ale zostanie uruchomiona kopia chrome.exe
, wtedy ta sesja będzie nadal aktywna, dopóki jej nie zabijesz.)
Skopiuj gdzieś te cztery pliki, abyś mógł pracować bez utraty niczego. W ten sposób zawsze możesz skopiować je z powrotem, jeśli coś pójdzie nie tak.
Reopen Tab(s)
Wiem o komendzie Ctrl+T. Ale normalnie używam jej podczas przeglądania. Czy to zadziała po zamknięciu Chrome'a?
Tak, do pewnego stopnia, ale masz złe kombo; to Ctrl+⇧ Shift+T. A jeśli miałeś wiele kart otwartych przed zamknięciem, to powinno się je wszystkie otworzyć ponownie.
(W starszych wersjach, z jakiegoś powodu, działałoby to tylko wtedy, gdybyś najpierw stworzył nową kartę. Wciąż używam Chromium 11 na moim systemie XP i zawsze jestem zaskoczony tym dziwnym zachowaniem. Ilekroć zamykam Chrome przypadkowo i muszę odzyskać moje karty, najpierw muszę otworzyć kartę (naciśnięcie Ctrl+T dla nowej strony karty jest najłatwiejsze) przed naciśnięciem Ctrl+⇧ Shift+T, aby uzyskać poprzednie karty z powrotem. W nowszych wersjach (nie jestem pewien kiedy, ale dla wielu wersji teraz) działa bez konieczności otwierania zakładki)
Teraz, zanim przejdziesz do Chrome, muszę cię ostrzec, że to nie zawsze działa. Po pierwsze, nie będzie działał natychmiast po uruchomieniu Chrome'a. Musisz poczekać, aż Chrome odczyta pliki użytkownika i je przetworzy. Może to potrwać kilka chwil i możesz to zobaczyć klikając prawym przyciskiem myszy na pasku zakładek i obserwując, że wpis Reopen closed tab context-menu jest na chwilę wyszarzony/wyłączony. Jeśli poczekasz kilka chwil i powtórzysz, powinien on stać się czarny (włączony) i wtedy możesz z niego skorzystać.
Jednak nawet jeśli poczekasz chwilę, nie zawsze przywróci poprzednią sesję. Czasami Chrome po prostu traci poprzednią sesję i karty, a funkcja ponownego otwarcia karty po prostu nie będzie działać. Nie udało mi się ustalić, dlaczego lub rozpoznać żadnego wzorca lub przyczyny, ale zawsze wydaje się, że tak jest, gdy jest to najbardziej potrzebne. Nie robiłem testów klinicznych, eksperymentalnych, ale wydaje się, że otwarcie nowej zakładki po uruchomieniu jest dobrym sposobem na zmuszenie Chrome'a do wymazania twojej poprzedniej sesji (wydaje mi się, że to oznacza, że skończysz z tym i zaczniesz coś nowego).
W przypadku, gdy to się stanie, polecam skopiowanie czterech plików powyżej przed ponownie uruchamiając Chrome'a. W ten sposób nie stracisz ich, jeśli Chrome jest w złym humorze i zdecyduje się je wytrzeć.
Skopiuj pliki, a następnie uruchom Chrome i poczekaj kilka chwil, a następnie zobacz, czy ponowne otwarcie karty jest dostępne.
Recovery Mode
Jeśli nadal nie jest dostępny, spróbuj umieścić Chrome w trybie odzyskiwania:
- Zamknij Chrome
- Skopiuj kopię zapasową czterech plików z powrotem do swojego katalogu User Data
- Otwórz plik
Local State
w edytorze tekstowym (znajduje się on w folderze głównym User Data)
- Zlokalizuj wpis
exited_cleanly
- zmień go na
false
- Zapisz i wyjdź z
- uruchom. Chrome
Teraz to powinno wyświetlić pasek informacyjny Chrome nie wyłączył się poprawnie. Kliknij przycisk [Restore]
i miejmy nadzieję, że przywróci on Twoją sesję. (To powinno zadziałać nawet jeśli otworzyłeś nowe zakładki przed kliknięciem przycisku)
Jeśli to nie zadziała, spróbuj skopiować Last Tabs
i Last Session
do Katalogu Danych Użytkownika i zmienić ich nazwy odpowiednio na Current Tabs
i Current Session
. Oczywiście nawet jeśli to zadziała, otrzymasz tylko sesję przed poprzednią, a nie tę, która się rozbiła, ale to może być wystarczające w zależności od sytuacji.
Manual Extraction
Jeśli to nadal nie działa, możesz ręcznie wyodrębnić karty z plików za pomocą programu do przeszukiwania łańcuchów jak Strings (zobacz rysunek). Uruchomić program, przekazując mu pliki i zapisać je do innego pliku. Większość takich programów wymaga użycia wiersza poleceń, ale przypuszczalnie istnieją również wersje GUI (choć w tej chwili nie mogę ich znaleźć). Tak więc na przykład, jeśli zapiszesz strings.exe
do c:\foobar
i skopiujesz do niego również cztery pliki, możesz rozpakować karty w następujący sposób:
C:\foobar>strings "current tabs" > ctabs.txt
C:\foobar>strings "last tabs" > ltabs.txt
C:\foobar>strings "current session" > csess.txt
C:\foobar>strings "last session" > lsess.txt
(dodałem dodatkowe spacje, aby wyrównać wszystko tylko po to, żeby było jasne, co się dzieje)
Teraz możesz otworzyć nowe pliki tekstowe *tabs.txt
i zobaczyć adresy URL kart, które miałeś wcześniej otwarte. Zauważ, że możesz zobaczyć wiele duplikatów, jak również niektóre karty, które zostały zamknięte.
Pliki *sess.txt
będą zawierać inne informacje, takie jak tekst, który wpisałeś do formularzy na stronie, więc jeśli miałeś otwartą stronę z mnóstwem informacji, które zostały wprowadzone, można odzyskać, że tak, że nie trzeba zaczynać wszystko od nowa od nowa. (Na przykład, jeśli przypadkowo zamknę tę stronę, mogę odzyskać ten tekst, który wpisuję w tej właśnie chwili, zamiast próbować robić to wszystko od nowa. Przerażenie! ๏\COPY10) Zauważ jeszcze raz, że prawdopodobnie zobaczysz duplikat. Najgorsze jest to, że jeśli pisałeś coś przez jakiś czas i zmieniło się to wiele razy od początku (jak ten tekst tutaj), to prawdopodobnie znajdziesz kilka jego kopii, każda z nich to migawka w różnych punktach. To może być żmudne badać każdy plik, aby zobaczyć, która z nich jest najnowszą wersją z ostatnimi zmianami; ale i tak jest to lepsze niż rozpoczynanie od nowa.
Future Session Management
Aby uniknąć takich problemów w przyszłości (i aby uniknąć konieczności polegania na Chrome'u do poprawnego działania), możesz zainstalować session-management extension . Jest kilka do wyboru, ale polecam Session Buddy . Działa całkiem dobrze, jest wszechstronny, a Hans jest otwarty na bug-reports i feature-requests . (Myślę, że ostatnio dodał nawet synchronizację!) Session Buddy pozwala na ręczne zapisywanie sesji, ale może również automatycznie zapisywać sesje, więc łatwo można je odzyskać po awarii.
Teraz po prostu zamieścię tę odpowiedź, klikając ten czerwony przycisk w rogu…