Jak znaleźć tekst w zawartości pliku

Może nigdy nie musiałeś tego robić, może raz spróbowałeś i zrezygnowałeś. W każdym razie potwierdzam to, co prawdopodobnie już podejrzewasz: nie może wyszukiwać tekstu w zawartości pliku z Nautilusa. Na wypadek, gdybyś nadal zgubił się, próbując dowiedzieć się, jak do diabła szukać czegoś w Nautilusie, tuż obok paska adresu znajduje się przycisk z ikoną lupy (łatwiej, naciśnij Ctrl + F). Stamtąd możesz wyszukiwać foldery i pliki według nazwy, ale nie możesz wyszukiwać tekstu w zawartości plików. Więc jak to robimy? Oto rozwiązanie ... cóż, połowa. 🙂

Gnome-Search-Tool, tylko dwa kliknięcia ...

Idź do Miejsca> Znajdź pliki… Możesz także uruchomić to narzędzie, naciskając Alt + F2 i wpisując narzędzie do wyszukiwania gnome.

Po otwarciu okna kliknij tam, gdzie jest napisane Zobacz więcej opcji. Tam pozwoli ci wprowadzić tekst do wyszukania. Ponadto będziesz mógł wprowadzić inne parametry wyszukiwania, takie jak data modyfikacji, rozmiar, właściciel pliku itp.

Przez terminal

Być może użyłeś polecenia grep jeśli dobrze wiesz, do czego służy. Cóż, czas się uczyć.

Jest to polecenie, które służy właśnie do wyszukiwania tekstu w zawartości plików. Możesz wykonywać wszelkiego rodzaju wyszukiwania, jakie przyjdą Ci do głowy. Jak każde polecenie terminala, jego sekret polega na dobrej znajomości dostępnych parametrów.

Podamy konkretny przykład. Załóżmy, że chcesz znaleźć w folderze wszystkie pliki zawierające frazę „użyjmy linuxa” / media / win / stuff.

Polecenie do wykonania wyglądałoby tak:

grep -lir "użyjmy linuxa" "/ media / win / stuff"

Parametr -l mówi, że należy wydrukować nazwy plików, w których znajduje się żądany tekst. Parametr -i, który nie rozróżnia wielkości liter. Parametr -r, który przeszukuje rekurencyjnie w określonej ścieżce.

Jeśli chcesz ograniczyć wyszukiwanie do określonego typu pliku, najpierw przejdź do ścieżki, w której ma wyszukiwać grep.

cd / media / win / stuff

Następnie napisałem coś podobnego do tego dostosowując go do Twoich potrzeb:

grep -lir "użyjmy linuxa" * .pdf

Aby uzyskać więcej informacji, napisz człowiek grep w terminalu. 🙂 Instrukcja nie gryzie!

Oba narzędzia wyszukują zwykłe pliki tekstowe zawierające określony tekst. Nie są używane do wyszukiwania tekstu w plikach binarnych, takich jak PDF, DOC, ODT itp. 🙁 Właściwie musisz zrobić coś bardziej skomplikowanego, co na pewno opublikuję w kolejnym poście. 🙂

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   Lew powiedział

    Cóż, odpowiadam sobie 🙂
    grep -r "7005" * –include = *. xml

    możesz użyć –include lub –exclude z -r

    ????

    1.    David powiedział

      A co z Leo, u mnie zadziałało tak (z podwójnym «-» dla dołączenia):
      grep -r "7005" * –include = *. xml

      pozdrowienia

  2.   Lew powiedział

    Szczegół, w ostatnim przykładzie: grep -lir "użyjmy linux" * .pdf, jeśli używam * .xml (na przykład), to nie przeszukuje rekurencyjnie, ale przeszukuje katalog w postaci * .xml, a nie w wszystkie pliki * .xml, które znajdują się w podkatalogach. Szukałem właśnie rozwiązania tego, czy ktoś wie?
    Możesz po prostu użyć *, ale obejmuje to wszystkie pliki, tego chcę uniknąć.

  3.   Hernando powiedział

    bardzo dobre.

  4.   Computer Guardian powiedział

    Idealne, jasne i dobrze wyjaśnione.
    Jak poprawić, wskaż to w poleceniu
    grep -lir "użyjmy linuxa" "/ media / win / stuff"
    cudzysłowy należy pozostawić w następujący sposób
    grep -lir "użyjmy linuxa" / media / win / stuff
    pozdrowienia

  5.   Użyjmy Linuksa powiedział

    Dokładny. Umieściłem cudzysłowy na wypadek, gdyby ktoś zastąpił mój przykład ścieżką zawierającą spacje. Przewidywałem przyszłe roszczenie: hej, to nie działa dla mnie !! Ha ha…
    W każdym razie to, co mówisz, jest prawdą. W przykładzie jest wiele cudzysłowów, ale jeśli chcesz wprowadzić ścieżkę zawierającą spacje, musisz umieścić cudzysłowy.
    Zrobiłem zastrzeżenie. Pozdrawiamy i bardzo dziękuję za komentarz!

  6.   freeseven powiedział

    Znakomity wkład, bardzo dobrze wyjaśniony: prosty i łatwy do zrozumienia. Czekam na ten przyszły post, który ogłosisz na końcu.
    pozdrowienia

  7.   Użyjmy Linuksa powiedział

    Tak, już dodałem to do mojej listy rzeczy do zrobienia! 🙂
    Twoje zdrowie! Paweł.

  8.   Fernando powiedział

    Bardzo dobre! naprawdę przydatne i działa świetnie!

    Dzięki!

  9.   Gustavo Mennichelliego powiedział

    Szanowni Państwo, widząc treść Waszych komentarzy, które uważam za zachęcające, postanowiłam poprosić Was o pomoc przy wideo ni lenovo T430. Używam linux Mint od wersji 9 teraz zainstalowałem wersję 17 KDE i mam problemy z rozdzielczością wideo Nie mogę użyć rozdzielczości 1920 × 1080, która ma płytę. możesz mi pomóc?
    dzięki

  10.   strony internetowe walencja powiedział

    ok stary, dziękuję, że mi służyłeś !!! salu2

  11.   Guille powiedział

    To właśnie te szczegóły niszczą wspaniałe darmowe systemy w roku 2015 i nadal nie mogą wyszukiwać tekstów w przeglądarce plików? A najgorsze jest to, że pamiętam, że jakieś 10 lat temu było to możliwe, dlaczego wracamy do pewnych podstawowych rzeczy?
    Tak, prosta komenda, tak, to nic nie kosztuje, masz kod i inne, ale myślę, że tego typu detale wyróżniają początkującego użytkownika, który zbliża się do świata gnu / linux.

    1.    Morguł powiedział

      Mówimy o wyszukiwaniu treści w plikach, a nie filtrowaniu ich po nazwie 🙂

  12.   Ezekiel powiedział

    Zawsze dobrze jest zaplanować tego typu posty 😉

  13.   WilkMaxs powiedział

    W MacOSX możesz wykonać to polecenie: (przypuszczam, że w Linuksie też tam będzie, ponieważ Linux i MacOSX to rodzina, „mali bracia”.)

    mdfind -onlyin [ścieżka do katalogu, w którym będziemy szukać] zapytanie ["tekst do wyszukania"]
    użyj cudzysłowów dla tekstu ze spacjami. 😉

    na przykład:
    mdfind -onlyin Program nauczania zapytań dotyczących dokumentów

  14.   Hernan powiedział

    Te polecenia, ich wielka użyteczność i tak łatwe dzielenie się nimi ratują ojczyznę.!