Udało mi się zastrzelić w miejscu, w którym boli (naprawdę źle), zmieniając format partycji zawierającej cenne dane. Oczywiście nie było to zamierzone, ale się stało.
Udało mi się jednak wykorzystać testdiski photorecodzyskać większość danych. Więc teraz mam wszystkie te dane rozproszone w prawie 25 000 katalogów. Większość plików to pliki .txt, a pozostałe to pliki obrazów. W każdym katalogu znajduje się ponad 300 plików .txt.
Mogę greplub mogę użyć finddo wyodrębnienia niektórych ciągów z plików .txt i przesłania ich do pliku. Na przykład oto wiersz, którego użyłem do sprawdzenia, czy moje dane znajdują się w odzyskanych plikach:
find ./recup*/ -name '*.txt' -print | xargs grep -i "searchPattern"
Mogę wypisać „searchPattern” do pliku, ale to tylko daje mi ten wzór. Oto, co naprawdę chciałbym osiągnąć:
Przejrzyj wszystkie pliki i poszukaj określonego ciągu. Jeśli ten ciąg zostanie znaleziony w pliku, cat CAŁĄ zawartość tego pliku do pliku wyjściowego. Jeśli wzorzec znajduje się w więcej niż jednym pliku, dołącz zawartość kolejnych plików do tego pliku wyjściowego. Zauważ, że po prostu nie chcę wypisywać szukanego wzorca, ale CAŁĄ zawartość pliku, w którym znaleziono wzorce.
Myślę, że jest to wykonalne, ale po prostu nie wiem, jak pobrać całą zawartość pliku po wytłoczeniu z niego określonego wzorca.