Něco co budete potřebovat často, zjistit zda v nějakém textovém souboru je něco obsaženo (a kde). Případně ve kterém ze souborů ve složce to něco jeho.
Nejpraktičtější k naučení se grep. Jméno příkazu je mimochodem vzniklé ze zkratky Global Regular Expression Print a je to dost dobré vědět, protože můžete hledat nejenom na výskyt nějakého textu, ale používat i regulární výrazy.

Zajímavost na začátek, grep jde použít i pro zobrazení kompletního obsahu souboru:
grep “ soubor.txt
Těch způsobů/možnosti je ale víc a ty další jsou možná i praktičtější, viz Jak v terminálu v Linuxu otevřít či si prohlédnout soubor?
Běžné použití je ale takové, že napíšete co hledáte
grep “hledaneslovo” soubor.txt (uvozovky se používat nemusí pokud jde o jednoduché slovo)
grep -i “hledaneslovo” soubor.txt (a naopak musí, když je to víc slov, speciáolní znaky, proměnné, apostrof či regexp)
Druhá variata umožňuje ignorovat velikost písmen, což je dost důležité. Výchozí chování je, že “error” není totéž jako “Error”.
Můžete chtít ale i prohledat všechny soubory ve složce a podsložkách:
grep -r “hledaneslovo”
Užitečné je i chtít vidět vše jenom ne to co hledáte – grep totiž hledá po řádcích a ty také vypisuje. Následující příklad tak vypíše všechny řádky z app.log, které neobsahují ERROR (a záměrně ignoruje velikost písmen).
grep -v -i “ERROR” app.log
Velmi šikovné je, že grep saamozřejmě lze používat i v kombinaci s “pípou”. O tom je tu Umíte používat rouru/pipe (|)? Jaké další podobné operátory můžete využívat? kde je i několik příkladů právě s využitím grepu.

Jedno z častých použití je například následující
ps aux | grep „ssh“
Pomocí ps získáte přehled běžících procesorů, ten pošlete přes pípu do grepu a zobrazíte jen ssh procesy.
Užitečné může být i třeba
ls | grep \\.jpg
pro výpis souborů s příponou .jpg v aktuální složce.
ls -lh | grep .K
pro výpis všech souborů co jsou menší než 1 MB (protože jejich velikost bude uvede v KB).
TIP: V tomto tipu je řeč o hledání v obsahu souborů, ale možná budete prostě hledat nějaký konkrétní soubor. Viz Jak v Linuxu zjistit kde se nachází (a odkud se spustí) konkrétní příkaz? Použijte which\
Další hodně užitečné může být
grep -rl ERROR ./
pro prohledání složky (a jejích podsložek) na soubory (-r) které obsahují “ERROR” a vypsání pouze názvu souborů (-l).
Ideálně ještě dopnitelné o “-I” (velké í), která zajistí, aby neprohledával binární soubory.
grep -rlI ERROR ./
Aby toho nebylo málo, může chtít i hledat kompletní slova – k tomu slouží “-w”
Případně se naučite i “-x”, to umožńuje hledat celou řádku/frázi.
Velmi se může hodit zjistit čísla řádek, kde bylo nalezeno.
grep -n “printf” muj_kod.c
Regulární výraz
Výše zmíněné regulární výrazy jsou hodně užitečné rozšíření. Například
grep „^[0-9]“ soubor.txt
vypíše všechny řádky, které začínají číslicí.
Většina implementací grepu ale umožňuje i rožšířené/extended regulární výrazy. Je ale nutné použít “-E”
TIP: Jak v Linuxu kopírovat soubory a složky? Naučte se cp
Ripgrep (rg)
ripgrep (rg) je rychlejší grep, ale možná ho ve vašem shellu mít nebudete (zsh v Mac OS například tohle neumí) – takže si ho přídejte (klasicky například pomocí “sudo apt install ripgrep“ v Ubuntu/Debianu, “bew install ripgrep” v MacOS s Homebrew ).
Pak už používejte jako výše, jen voleje pomoci rg
Další tipy týkající se Linuxu (a podobných věcí)
-
TIP#1889: Jak ve Firefoxu pořídit screenshot bez nutností rozšíření či další aplikace
Byly doby, kdy tohle Firefox neuměl, ale nějaké ty měsíce to už umí – pro screenshot nepotřebujete nic víc než samotný Firefox. Stačí když na kýžené stránce vyvoláte menu schované pod „…“…
-
TIP#1859: Jak na iOSu mít Linuxový shell?
Tohle by se vám mohlo líbit pro iPhone a ještě více pro iPad – iSH je projekt zpřístupňující Linux shell na iOSu (a tím i na IPadu). Je založený na Alpine Linux,…
-
TIP#1849: Užitečné balíčky, které si můžete na MacOS pořídit přes Homebrew
V K čemu je na Mac OS dobrý homebrew. Jak to nainstalovat, používat i aktualizovat se dozvíte vše potřebné k používání správce balíčků, jedné z nejdůležitějších věcí v Linuxu. A abyste si toho…
-
TIP#1836: Co to znamená CLI?
CLI je zkratka z Command Line Interface a používá se pro cokoliv kde je ve hře příkazová řádka (command prompt) a nikoli nějaké grafické (GUI) rozhraní. Ve Windows to tedy může být…
-
TIP#1835: K čemu je na Mac OS dobrý homebrew. Jak to nainstalovat, používat i aktualizovat
O homebrew byla řeč více než pouhou zmínkou v Zprovoznění MacBooku: Potřebné a obvyklé aplikace (3) ale je čas se k tématu vrátit v delším tipu. Homebrew je vlastně klasický package manager, tedy…
-
TIP#1813: Co dělat, když nutné potřebujete Flash?
Flash skončil k poslednímu prosinci 2020. Adobe už neposkytuje Flash ke stažení, prohlížeče co ho obsahovaly napřímo, ho už odstranily a pokud ho máte v počítači, budete vidět výzvy k odstranění. A…
-
TIP#1805: Co je to SSH a k čemu je to dobré
SSH je zkratka pro Secure Shell (v delší podobě Secure Socket Shell) a v hlavní podobě jde o šifrovaný síťový protokol umožňující bezpečnou komunikaci v síti co nemá žádné další zabezpečení (VPN…
-
TIP#1748: Jak si pořídit spouštěč aplikací co mají uživatelé na MAC OS? Dock pro Windows či Linux
Možná jste to zahlédli u někoho s MAC počítačem, na (většinou) spodku displeje mají řadu ikon pomocí kterých spouští a přepínají programy. Říká se tomu Dock a můžete to mít na Linuxu…
-
TIP#1723: Jak na Mac/MacBooku otevřít Terminal (příkazovou řádku)
Terminal je něco jako příkazová řádka ve Windows a může se stát, že tuhle aplikaci budete potřebovat otevřít a použít. Cest jak Terminal spustit je několik: Související příspěvky TIP#2159: Co je to…
-
TIP#1712: Jak podepsat PDF dokument? Windows, Mac OS, iOS, Android, Linux
Čas od času se setkáte s potřebou podepsat PDF dokument – nikoliv nějakým digitálním podpisem či certifikátem, ale prostě svým podpisem. Ač to vypadá komplikované, je to velmi jednoduché a nebudete ani…
-
TIP#1707: Jak mít na obrazovce pravítko?
Mít na obrazovce pravítko? Netušíte k čemu taková užitečnost je? No přeci k tomu, abyste si změřili rozměry nějakého obrázku, webu, sloupce v designu webu. Pokud jenom trochu řešíte webdesign tak je…
-
TIP#1703: Jak mezi iPhone, iPadem, Mac počítačem a Windows či Androidem přenést webovou adresu (URL)
Máte na Mac Booku či Windows otevřenou nějakou webovou stránku a chcete si ji otevřít i na iPhone či Androidu? Hodně častá situace, jedno ve kterém směru. Může to být článek, odkaz…
-
TIP#1684: Jak na Mac/MacBooku spustit Linux z USB klíčenky
Mac či MacBook můžete opatřit i Windows, Apple na to má přímo i mechanismus v podobě Bootcampu. Stačí na pevném disku vytvořit oblast (partition) a do té nainstalovat Windows a můžete použít…
-
TIP#1679: Jak na Mac OS spouštět věci z Windows/Linuxu? Virtualizace pro Mac OS nebo Boot Camp
Mac či MacBook samozřejmě neumí spouštět programy pro Windows. Stejně jako to neumí jiné operační systémy. Takže pokud potřebujete spouštět něco takového, tak musíte zvolit jednu ze tří možných cest. U dvou…
-
TIP#1610: Jak na skupiny záložek v Chrome a k čemu možnost seskupit záložky může být užitečná
Chrome v některé z dalších verzí zpřístupní možnost vytvářet skupiny záložek (tab groups) – pokud nemáte některou z beta verzi, tak si to už můžete zapnout i v ostré – stačí povolit…

















