Linux príkazy grep príkazov

Niekedy sa používatelia stretávajú s potrebou vyhľadávať určité informácie v rámci ľubovoľných súborov. Konfiguračné dokumenty alebo iné objemové údaje často obsahujú veľký počet riadkov, takže nie je možné manuálne nájsť potrebné údaje. Potom jeden z vstavaných príkazov pre operačné systémy Linux príde na záchranu, ktorá vám umožní nájsť linky za pár sekúnd.

Použite príkaz grep v Linuxe

Čo sa týka rozdielov medzi distribúciami Linuxu, v tomto prípade nehrajú žiadnu rolu, pretože príkaz grep, ktorý vás zaujíma, je štandardne dostupný vo väčšine zostáv a používa sa presne rovnakým spôsobom. Dnes by sme chceli prediskutovať nielen vplyv grepu , ale aj hlavné argumenty, ktoré môžu výrazne zjednodušiť postup vyhľadávania.

Pozri tiež: Hľadáte súbory v Linuxe

Prípravné práce

Všetky ďalšie akcie sa budú vykonávať prostredníctvom štandardnej konzoly, tiež vám umožní otvárať súbory len zadaním plnej cesty k nim, alebo ak sa terminál spustí z požadovaného adresára. Môžete nájsť rodičovský priečinok súboru a prejsť naň v konzole takto:

  1. Spustite správcu súborov a prejdite na požadovaný priečinok.
  2. Otvorenie Správcu súborov Linux

  3. Kliknite pravým tlačidlom myši na požadovaný súbor a vyberte "Vlastnosti" .
  4. Prepnite na vlastnosti priečinka v operačnom systéme Linux

  5. Na karte „Basic“ si prečítajte riadok „Parent folder“ .
  6. Zistite priečinok rodičovského súboru v operačnom systéme Linux

  7. Teraz spustite „Terminal“ pomocou vhodnej metódy, napríklad prostredníctvom menu alebo stlačením kombinácie klávesov Ctrl + Alt + T.
  8. Spustenie terminálu pre ďalšiu prácu v Linuxe

  9. Tu prejdite do adresára pomocou príkazu cd /home/user/folder , kde užívateľ je meno používateľa a priečinok je názov priečinka.
  10. Prejdite do konkrétneho priečinka prostredníctvom terminálu v systéme Linux

Ak chcete zobraziť celý obsah, použite cat + название файла . Podrobný návod na prácu s týmto tímom nájdete v našom ďalšom článku na nižšie uvedenom odkaze.

Pomocou príkazu cat na termináli Linuxu

Ďalšie podrobnosti: Príklady príkazov pre mačky Linux

Vďaka vyššie uvedeným krokom môžete použiť grep , ktorý je v pravom adresári, bez zadania úplnej cesty k súboru.

Štandardné vyhľadávanie obsahu

Predtým, než pristúpime k zváženiu všetkých dostupných argumentov, je dôležité poznamenať obvyklé vyhľadávanie podľa obsahu. Bude to užitočné v tých chvíľach, keď potrebujete nájsť jednoduchú zhodu podľa hodnoty a zobraziť všetky príslušné riadky.

  1. Do príkazového riadka zadajte príkaz grep word testfile , kde slovo je informácia, ktorú hľadáte, a testfile je názov súboru. Pri vyhľadávaní mimo priečinka zadajte úplnú cestu ako v /home/user/folder/filename . Po zadaní príkazu stlačte kláves Enter .
  2. Normálne vyhľadávanie prostredníctvom príkazu grep v Linuxe

  3. Zostáva len zoznámiť sa s dostupnými možnosťami. Na obrazovke sa zobrazia plné čiary a hodnoty tlačidiel sú zvýraznené červenou farbou.
  4. Zobrazenie normálnych výsledkov vyhľadávania pomocou príkazu grep v systéme Linux

  5. Je dôležité vziať do úvahy prípad písmen, pretože kódovanie Linuxu nie je optimalizované na vyhľadávanie bez zohľadnenia veľkých alebo malých znakov. Ak chcete obísť definíciu prípadu, zadajte grep -i "word" testfile .
  6. Nájdenie obsahu súboru necitlivého na Linux

  7. Ako môžete vidieť, na nasledujúcom obrázku sa výsledok zmenil a pridal sa ešte jeden nový riadok.
  8. Zobrazenie nájdených slov v prípade, že nie je v Linuxe

Vyhľadávanie pomocou zachytávania reťazca

Niekedy používatelia potrebujú nájsť nielen presnú zhodu v riadkoch, ale aj zistiť informácie, ktoré prichádzajú za nimi, napríklad pri hlásení konkrétnej chyby. Potom je správnym riešením použiť atribúty. Napíšte grep -A3 "word" testfile do konzoly, aby ste zahrnuli nasledujúce tri riadky do výsledku po zápase. Môžete písať -A4 , potom štyri čiary budú zachytené, neexistujú žiadne obmedzenia.

Zobrazí počet riadkov za kľúčovým slovom v systéme Linux

Ak namiesto -A použijete argument -B + количество строк , výsledkom sú dáta, ktoré sú až do bodu vstupu.

Zobrazí počet riadkov pred kľúčovým slovom v systéme Linux

Argument , zase zachytáva čiary okolo kľúčového slova.

Zobrazenie okolitých kľúčových slov v Linuxe

Nižšie nájdete príklady priradenia zadaných argumentov. Vezmite prosím na vedomie, že musíte vziať do úvahy prípad a uviesť dvojité úvodzovky.

grep -B3 "word" testfile
grep -C3 "word" testfile

Hľadať kľúčové slová na začiatku a konci riadkov

Potreba definovať kľúčové slovo, ktoré je na začiatku alebo na konci riadku, sa najčastejšie vyskytuje počas práce s konfiguračnými súbormi, kde každý riadok je zodpovedný za jeden parameter. Ak chcete vidieť presný záznam na začiatku, musíte zaregistrovať súbor grep "^word" testfile . Za použitie tejto možnosti zodpovedá iba znak ^ .

Vyhľadajte kľúčové slovo na začiatku riadku Linux

Vyhľadávanie obsahu na konci riadkov sa deje približne rovnakým spôsobom, iba v úvodzovkách by ste mali pridať znak $ a príkaz bude vyzerať takto: grep "word$" testfile .

Vyhľadávanie podľa kľúčového slova na konci riadku Linux

Vyhľadajte čísla

Pri hľadaní požadovaných hodnôt nemá užívateľ vždy informácie o presnom slove prítomnom v reťazci. Potom je možné vyhľadávací postup vykonať pomocou čísel, čo niekedy veľmi zjednodušuje úlohu. Je potrebné použiť príkaz vo forme grep "[0-7]" testfile , kde "[0-7]" je rozsah hodnôt a testfile je názov súboru, ktorý sa má kontrolovať.

Vyhľadajte numerický rozsah v systéme Linux

Analýza všetkých adresárových súborov

Skenovanie všetkých objektov v rovnakom priečinku sa nazýva rekurzívne. Užívateľ musí použiť len jeden argument, ktorý analyzuje všetky súbory v priečinku a zobrazí príslušné riadky a ich umiestnenie. Budete musieť zadať grep -r "word" /home/user/folder , kde / home / user / folder je cesta k adresáru pre skenovanie.

Rekurzívne vyhľadávanie cez príkaz grep v Linuxe

Modrá zobrazí umiestnenie pre ukladanie súborov a ak chcete získať riadky bez týchto informácií, priraďte iný argument, aby sa príkaz dostal do tohto grep -h -r "word" + путь к папке .

Rekurzívne vyhľadávanie bez zobrazenia cesty k súboru v Linuxe

Presné vyhľadávanie slov

Na začiatku článku sme už hovorili o obvyklom hľadaní slov. Pri tejto metóde sa však vo výsledkoch zobrazia ďalšie kombinácie. Napríklad nájdete slovo User , ale príkaz zobrazí aj User 123 , Password User a iné zhody, ak nejaké existujú. Aby ste sa vyhli tomuto výsledku, priraďte argument -w ( grep -w "word" + имя файла или его расположение ).

Zobraziť iba presné položky v systéme Linux.

Táto voľba je tiež vykonaná, keď potrebujete vyhľadať niekoľko presných kľúčových slov naraz. V tomto prípade napíšte egrep -w 'word1|word2' testifile . Vezmite prosím na vedomie, že v tomto prípade je písmeno gr pridané do grepu a sú vložené jednoduché úvodzovky.

Zobrazenie viacerých presných položiek v Linuxe

Vyhľadávajte reťazce bez špecifického slova.

Uvažovaný nástroj je schopný nielen nájsť slová v súboroch, ale aj zobraziť riadky, v ktorých neexistuje žiadna hodnota špecifikovaná používateľom. Potom sa pred zadaním hodnoty kľúča a súboru pridá -v . Vďaka nej, keď aktivujete príkaz, uvidíte iba relevantné údaje.

Nájdite reťazce bez zadaného slova v Linuxe

Syntax grep zhromaždila niekoľko ďalších argumentov, ktoré možno stručne vysvetliť:

  • -I - zobrazí iba názvy súborov, ktoré vyhovujú kritériám vyhľadávania;
  • -s - vypnutie upozornení na nájdené chyby;
  • -n - zobrazí číslo riadku v súbore;
  • -b - zobrazí číslo bloku pred riadkom.

Nič vám nebráni v používaní viacerých argumentov pre jedno zistenie, stačí ich zadať oddelene medzerou a nezabudnúť vziať do úvahy prípad.

Dnes sme dôkladne rozložili príkaz grep , ktorý je k dispozícii v distribúciách Linuxu. Je to jeden zo štandardov a často používaný. O ďalších populárnych nástrojoch a ich syntaxe si môžete prečítať v našom samostatnom materiáli na nasledujúcom odkaze.

Pozri tiež: Často používané príkazy v termináli Linuxu