Windows Tips & News

Najděte soubory obsahující konkrétní text v Linuxu

click fraud protection
DOPORUČUJEME: Kliknutím sem opravíte problémy se systémem Windows a optimalizujete výkon systému

Linux, bez ohledu na distribuci, kterou používáte, přichází s řadou nástrojů GUI, které umožňují vyhledávání souborů. Mnoho moderních správců souborů podporuje vyhledávání souborů přímo v seznamu souborů. Existuje však řada situací, kdy potřebujete konzolu použít, například během relace SSH nebo když se X server nespustí. Zde je návod, jak pomocí terminálu rychle najít soubory obsahující konkrétní text.

reklama

Pokud umíte používat GUI, hledání souborů není problém. V mém oblíbeném desktopovém prostředí XFCE umožňuje správce souborů Thunar vyhledávání souborů zadáním názvu souboru přímo do seznamu souborů.

Hledat soubory Linux

Žádný ze správců souborů, které jsem zkoušel, však neumožňuje vyhledávání obsahu souborů.

Chcete-li obejít toto omezení při práci v relaci GUI, můžete použít Сatfish. Сatfish je oblíbený vyhledávací nástroj. Umožňuje vyhledávání obsahu souboru. Musíte kliknout na ikonu ozubeného kola a povolit možnost Prohledejte obsah souboru.Obsah souboru hledání sumce

Pokud však jde o terminál, nemůžete použít žádný grafický nástroj. Také považuji Catfish za neužitečný a dávám přednost klasickým konzolovým nástrojům. Zde jsou metody a nástroje, které používám.

Chcete-li najít soubory obsahující konkrétní text v Linuxu, Udělej následující.

  1. Otevřete svou oblíbenou terminálovou aplikaci. Terminál XFCE4 je moje osobní preference.
  2. Zadejte následující příkaz:
    find ./ -type f -exec grep -l "text k nalezení" {} \;
  3. Tím se vytvoří seznam souborů, který obsahuje požadovanou textovou část.

Příkaz find vyhledá soubory začínající v aktuálním adresáři "./". Místo toho můžete zadat požadovanou cestu.

Možnost - typ f říká, že má hledat pouze soubory a vyloučit adresáře. Můžete také nastavit, aby vyhledával pouze určitý typ souboru přidáním možnosti takto:
find ./ -type f -iname "*.txt" -exec grep -l "text k nalezení" {} \;

Podívejte se na následující snímek obrazovky:Linux prohledá obsah souboru

The -exec Volba zavolá nástroj grep pro každý z odpovídajících souborů, aby zkontroloval jejich obsah. Pokud je text v souboru nalezen, jeho název bude přidán do výstupu, díky -l možnost.

Obsahskrýt
Alternativy
Půlnoční velitel

Alternativy

K výše popsaným metodám existují alternativy. Za prvé, můžete použít pouze grep nářadí. Zkuste následující příkaz:

grep -iRl "text k nalezení" ./

  • -i znamená ignorovat malá a velká písmena.
  • -R znamená rekurzivní zpracování souborů.
  • -l znamená "zobrazit název souboru, nikoli samotný výsledek".
Linux Hledat pouze obsah souboru Grep

Jak vidíte, tato metoda je méně flexibilní než nalézt příkaz.

Půlnoční velitel

Další metodou, kterou často používám, je Midnight Commander (mc), aplikace správce souborů konzoly. Na rozdíl od find nebo grep není mc ve výchozím nastavení součástí všech linuxových distribucí, které jsem zkoušel. Možná jej budete muset nainstalovat sami.

Chcete-li pomocí Midnight Commander najít soubory obsahující určitý text, spusťte aplikaci a stiskněte na klávesnici následující sekvenci:
Alt + Posun + ?
Tím se otevře vyhledávací dialog.

Najděte soubory s Mc Linux Original

Vyplňte část "Název souboru:". Můžete zadat něco jako "*.txt" pro vyhledávání textu pouze v textových souborech.

Nyní vyplňte Obsah: krabice. Zadejte text, který soubory obsahují, a stiskněte klávesu Enter.

Najde všechny soubory, které odpovídají kritériím.

A je to.

DOPORUČUJEME: Kliknutím sem opravíte problémy se systémem Windows a optimalizujete výkon systému
Jak zakázat moderní pohotovostní režim ve Windows 11 a Windows 10

Jak zakázat moderní pohotovostní režim ve Windows 11 a Windows 10

Dnes se podíváme na snadný způsob, jak deaktivovat moderní pohotovostní režim ve Windows 11 a Win...

Přečtěte si více

Sergey Tkachenko, autor ve společnosti Winaero

Sergey Tkachenko, autor ve společnosti Winaero

Zde je další užitečný tip, jak ušetřit čas a zlepšit použitelnost systému Windows 8.1. Dnes se s ...

Přečtěte si více

Navzdory akvizici Microsoftu bude Activision Blizzard stále vydávat hry pro PlayStation

Navzdory akvizici Microsoftu bude Activision Blizzard stále vydávat hry pro PlayStation

Dnes, Microsoft oznámil svůj záměr získat Activision Blizzard za 68,7 miliardy dolarů. Dohoda by ...

Přečtěte si více