Kako koristiti naredbe Grep i primjere Tree Linuxa

Jedan od najsvestranijih operativnih sustava za upravljanje putem terminala nesumnjivo je Linux u bilo kojoj od njegovih dostupnih distribucija, a to zahvaljujući integraciji brojnih naredbi dostupnih na njegovoj konzoli. Nije važno koristimo li sustav temeljen na terminalu (poput verzija poslužitelja) ili okruženje temeljeno na grafičkom sučelju (poput verzija za stolna računala), u svakom od njih terminal i njegove naredbe uvijek će biti pouzdan izvor upravljanja i podršku.

Unutar naših svakodnevnih aktivnosti je stvaranje i uređivanje mapa i datoteka, koje mogu biti brojne, ovisno o ulozi. To je u nekom trenutku podrška normalno da na ovaj ili onaj način negativno utječe na traženje elemenata ne samo po broju datoteka, već i po mjestu na kojem se nalaze.

Da bismo lakše upravljali ovim vrstama aktivnosti na mnogo jednostavniji način, imamo dvije bitne naredbe za pretraživanje i pregled objekata u Linuxu, a to su naredbe Grep i Tree. Solvetic će detaljno objasniti njihovu upotrebu i kako ih sveobuhvatno primijeniti u distribuciji Linuxa koju koristimo.

1. Što je GREP naredba

Što je naredba GrepGrep je naredba razvijena za izvršavanje zadataka pretraživanja teksta, Grep je zadužen za pretraživanje u datoteci u kojoj označavamo retke u kojima je otkriveno podudaranje bilo s riječima ili nizom koje dodijelimo tijekom izvršavanja ovoga. Ime mu je izvedeno iz UNIX uređivača g / re / p. Tijekom izvršavanja Grepa bit će moguće naznačiti naziv datoteke ili je moguće napustiti standardni ulaz, pa je Grep zadužen za generiranje odgovarajućih redaka.

Grep varijablePostoje tri (3) varijable kojima se upravlja tijekom Grep procesa, a to su:

  • -G, --basic-regexp: ovo je odgovorno za tumačenje uzorka kao osnovnog regularnog izraza, to je zadana vrijednost.
  • -E, --extended-regexp: Ova opcija vrijedi uzorak kao prošireni regularni izraz.
  • -F, --fixed-strings: s ovom opcijom uzorak se tumači kao popis nizova fiksnih znakova, odvojenih prijelomom retka gdje će se podudaranje naći u bilo kojem od njih.

Naredba Grep (Global Regular Expression Print) je naredba koja će nam omogućiti da analiziramo sustav kako bismo pronašli podudarnosti i nakon što ih otkrijemo, nastavimo ispisivati ​​rezultate tako da je moguće centralno upravljati tim rezultatima.

Grep sintaksaSintaksa za korištenje naredbe Grep je sljedeća:

 grep (opcija) Uzorak (datoteka) 

Grep naredbeni parametriPostoji niz parametara koje možemo koristiti s naredbom grep kako bismo postigli najbolje rezultate, a to su:

  • -E, --extended-regexp: Uzorci se shvaćaju kao regularni izrazi
  • -F, --fiksirani nizovi: Uzorci su nizovi
  • -G, --basic-regexp: Uzorci su osnovni regularni izrazi
  • -P, --perl-regexep: Uzorci su Perl izrazi
  • -e, regexp = UZORCI: Potražite uzorke za podudaranja
  • -F. -datoteka (datoteka): Koristite uzorke kao datoteku
  • -i, --ignore-case: Zanemari velika slova
  • -w, --word-regexp: Podudarajte sve iste riječi
  • -x, --line-regexp: Uskladite sve retke
  • -s, --no-messages: Uklanjanje poruka o pogrešci
  • -v, --invert-match: Odaberite retke koji ne odgovaraju kriterijima pretraživanja
  • -V, --verzija: Prikaz korištene grep verzije
  • -m, --max-count = NUM: Prestanite tražiti nakon navedenog broja redaka
  • -b, --byte-offset = Prikaz pomaka bajta pored izlaznih redaka
  • -n, --line-number: Ispisuje broj redaka
  • -H, --with-filename: prikaz naziva datoteke u izlaznim linijama
  • -q, --quiet: Potiskivanje svih rezultata
  • -d, --directories = Akcija: Pokazuje kako se rukuje direktorijima
  • -l, --files-without-match = Ispiši samo nazive datoteka ne uključujući retke
  • -c, --count: Ispis odabranih redaka po datoteci

Nemam naredbu GrepNaredba grep zadano je u distribucijama Linuxa, ali ako je iz nekog razloga nemate, možete je instalirati sa sljedećim naredbama:

 sudo apt-get install grep (Debian i Ubuntu) sudo yum install grep (Redhat, CentOS i Fedora)

Korak 1
Opća sintaksa, koja može sadržavati više parametara, je sljedeća:

 grep [-AB] broj] [-CEFGVbchiLlnqsvwxyUu] [[-e] uzorak | -f datoteka] [--extended-regexp] [--fiksirani nizovi] [--basic-regexp] [--regexp = PATTERN] [--file = FILE] [--ignore-case] [--word -regexp] [--line-regexp] [--line-regexp] [--no-messages] [--invert-match] [--version] [--help] [--byte-offset] [- -line-number] [--with-filename] [--no-filename] [--quiet] [--silent] [--files-without-match] [--files-with-matcces] [-count ] [--before- context = NUM] [--after-context = NUM] [--context] [--binary] [--unix-byte-offsets] datoteke … 
Korak 2
Vidjet ćemo neke primjere korištenja Grepa prije nego saznamo njegove parametre. Ako želimo pretraživati ​​u direktoriju / etc / passwd sve što se odnosi na određenog korisnika, možemo izvršiti sljedeće:
 grep "korisnik" / etc / passwd 
Korak 3
Rezultat će biti sljedeći:

Korak 4
Također će biti moguće prisiliti naredbu Grep da zanemari velika i mala slova, odnosno da dopusti podudarno rješenje, Solvetic ili SOLVETIC zajedno sa svim kombinacijama pomoću parametra -i:

 grep -i "rješavajući" / etc / passwd 

Korak 5
Ova se opcija može izvršiti i pomoću naredbe cat ovako:

 cat / etc / passwd | grep -i "rješavajući" 

2. Primjeri korištenja naredbe Grep


Korištenje naredbi u Linux operativnim sustavima obvezan je zadatak za sve IT administratore i korisnike jer zahvaljujući njima možemo obaviti stotine administrativnih, informacijskih i zadataka podrške. Postoje brojne naredbe, svaka sa svojim kriterijima i funkcijama, ali jedna od njih posebna za pretraživanje teksta u datotekama koje se nalaze u direktorijima ili mapama je naredba Grep.

Sada ćemo vidjeti kako koristiti naredbu Grep u Linuxu.

Kako koristiti Grep općenitoDa bismo razumjeli kako Grep funkcionira, pretražit ćemo u direktoriju / etc / passwd sve rezultate povezane s našim korisnikom:

 grep solutiontic / etc / passwd 
Kao rezultat toga vidjet ćemo sljedeće:

Kao dodatnu točku, sjetimo se da je moguće reći grepu da zanemaruje velika i mala slova u rezultatima, za to izvršavamo sljedeće:

 grep -i "rješavajući" / etc / passwd 

Grep je idealan za traženje određenih pojmova u poznatim datotekama, na primjer, izvršimo sljedeće pretraživanje:

 grep Solvetic Solvetic.txt 
Kao rezultat toga, vidjet ćemo retke u kojima se ta riječ ponavlja:

Ovaj isti pojam možemo istovremeno pretraživati ​​u različitim datotekama, za to ćemo upotrijebiti sljedeći redak:

 grep Solvetic Solvetic.txt Solvetic1.txt 

Kraći način za to je sljedeće:

 grep rješen *. * 

Kako koristiti grep za preusmjeravanje rezultata u datoteku na LinuxuTo je korisno u slučajevima u kojima kasnije moramo izvršiti administrativne zadatke nad datotekama, pa je moguće preusmjeriti izlaz naredbe grep u određenu datoteku, na primjer, učinit ćemo sljedeće:

 grep Solvetic Solvetic.txt> Solvetic2.txt 
Kao rezultat toga vidjet ćemo da je potrebna tekstualna datoteka stvorena:

POVEĆAJTE

Kako koristiti grep za pretraživanje direktorijaZahvaljujući parametru -r moći ćemo tražiti vrijednost u dostupnim poddirektorijima, izvršit ćemo sljedeće:

 grep -r Solvetic / dom / Soltic 
Time će se u cijelom matičnom direktoriju pretraživati ​​pojam koji ističe otkrivene rezultate:

Kako koristiti grep za prikaz broja retkaZa reviziju ili napredne zadatke podrške idealno je prikazati broj retka gdje se nalazi obrazac pretraživanja, za to možemo upotrijebiti parametar -n na sljedeći način. Tamo nalazimo broj retka u kojem se nalazi svaka vrijednost.

 grep -n Solvetic Solvetic.txt 

Kako upotrijebiti grep za isticanje rezultataKako znamo da se tekst može zbuniti mnogo puta, rješenje je istaknuti kriterij pretraživanja koji fokusira naš pogled izravno na tu liniju, za to ćemo koristiti parametar boje ovako:

 grep -boja Solvetic Solvetic.txt 

Kako koristiti grep za prikaz redaka koji počinju ili završavaju označenim uzorkomMoguće je da želimo vidjeti samo rezultate redaka koji počinju ili završavaju kriterijima pretraživanja, za to ćemo, ako želimo tražiti retke koji počinju, upotrijebiti sljedeći redak:

 grep Solvetic Solvetic.txt 

Sada ćemo za prikaz redaka koji završavaju upotrijebiti sljedeće:

 grep Solvetic $ Solvetic.txt 

Kako koristiti grep za ispis svih redaka bez da vidite koji se podudarajuAko želimo vidjeti sve retke osim onih u kojima se traži vrijednost, moramo koristiti -v parametar ovako:

 grep -v Solvetic Solvetic.txt 

Kako koristiti grep s drugim naredbamaGrep se, poput mnogih naredbi Linuxa, može koristiti istodobno s drugim naredbama za jasnije rezultate, na primjer, ako želimo implementirati HTTP procese, koristit ćemo grep zajedno s ps na sljedeći način:

 ps -ef | grep http 

Kako koristiti grep za brojanje koliko se riječi ponavlja u datoteciAko želimo znati koliko se puta uzorak ponavlja u određenoj datoteci, upotrijebit ćemo parametar -c:

 grep -c Solvetic Solvetic.txt 

Kako koristiti grep za obrnuto pretraživanjeIako zvuči čudno, ovo nije ništa drugo do prikaz riječi koje ne navodimo u rezultatu, to postižemo parametrom -v:

 grep -v Solvetic Solvetic2.txt

Kako koristiti grep za pregled pojedinosti o hardveruVeć smo vidjeli da možemo kombinirati grep s drugim naredbama za prikaz rezultata, pa, ako želimo dobiti određene pojedinosti o hardveru, možemo upotrijebiti cat s grepom ovako:

 cat / proc / cpuinfo | grep -i 'Model' 

Globalno smo naučili korištenje koje nam daje naredba grep za pristup mnogo specifičnijim rezultatima kriterija pretraživanja u Linuxu.

3. Kako rekurzivno koristiti naredbu Grep Linux

Korak 1
Grep nam daje mogućnost izvođenja rekurzivnog pretraživanja, odnosno da ovo pretraživanje čita sve datoteke u svakom direktoriju za određeni niz, na primjer, IP adresu računala, možemo izvršiti bilo koju od sljedećih opcija:

 grep -r "192.168.0.25" / etc / ili grep -R "192.168.0.25" / etc /

BilješkaTamo možemo unijeti trenutnu IP adresu opreme koja se koristi.

Korak 2
Isto možemo izvršiti i s IP 192.168.1.5 koji sustav koristi za standardne izlaze:

Korak 3
Možemo primijetiti da se s obje IP adrese prikazuje zasebni redak ispred kojega stoji naziv datoteke u kojoj je otkrivena, ako želimo eliminirati uključivanje ove vrijednosti, bit će moguće suzbiti je pomoću opcije -h kao ovo:

 grep -h -R "192.168.1.5" / etc / ili grep -hR "192.168.1.5" / etc /

BilješkaOva se naredba mora pokrenuti kao root ili dodavanjem sudo naredbi.

4. Kako koristiti naredbu Grep Linux za pokretanje pretraživanja riječi

Korak 1
Grep je koristan za pretraživanje pojmova u određenoj datoteci, stoga će rezultat na istaknuti način prikazati svaki redak u kojem se nalazi pojam za pretraživanje, kao i riječi (koje nisu označene) koje prate pojam za pretraživanje, sintaksa za korištenje je sljedeće. U ovom slučaju, 3 datoteke su otkrivene u datoteci Solvetic1.

 grep -w "word" datoteka

Korak 2
U slučaju da želimo tražiti dva izraza u datoteci, moramo izvršiti sljedeću sintaksu pomoću naredbe egrep. Kao što vidimo, tražene riječi bit će istaknute u rezultatu.

 egrep -w datoteka 'termin1 | termin2' 

5. Kako koristiti naredbu Grep Linux za brojanje riječi

Korak 1
Još jedna od Grepovih praktičnih opcija je mogućnost da se zna koliko se puta riječ ponavlja u određenoj datoteci, što se postiže zahvaljujući parametru -c poput ovog:

 grep -c 'word' datoteka 

Korak 2
Alternativno, možemo upotrijebiti -n parametar da ispred svakog izlaznog retka stoji broj retka u koji je upisan u odabranu datoteku:

 grep -n 'word' datoteka 

6. Kako prisiliti obrnuto pretraživanje Grep Linux naredba


S obrnutim pretraživanjem mislimo da će naredba Grep prikazati samo rezultate iz onih redaka koji ne sadrže definiranu riječ, to se postiže s -v parametrom ovako:
 grep -v "termin" datoteka 

7. Kako koristiti UNIX / Linux cijevi zajedno s naredbom Grep

Korak 1
Naredba Grep u Linuxu može se kombinirati s UNIX ljuskama, na primjer, ako želimo navesti naziv uređaja na tvrdom disku, izvršit ćemo sljedeći redak:

 dmesg | čaplja '(s | h) d [a-z]' 

Korak 2
Tamo će se prikazati rezultati sa svim odgovarajućim podacima. Za prikaz modela CPU -a izvršavamo:

 cat / proc / cpuinfo | grep -i 'Model' 

Korak 3
Za isti rezultat možemo izvršiti i sljedeće:

 grep -i 'Model' / proc / cpuinfo 
Korak 4
Jedna od najposebnijih upotreba naredbe Grep ili egrep je mogućnost filtriranja izlaza tradicionalnih naredbi kao što su yum, dpkg, apt ili apt-get. Na primjer, možemo pokrenuti sljedeći redak za pronalaženje Linux slika s dpkg:
 dpkg --list | grep linux-slika 

Korak 5
Bit će moguće pokrenuti pretraživanje s apt:

 prikladno pretraživanje maria | egrep "poslužitelj | klijent" 

8. Kako navesti samo nazive datoteka koji odgovaraju Grep


U tu svrhu možemo upotrijebiti opciju -l za popis imena datoteke u kojoj će njezin sadržaj biti istaknut na sljedeći način:
 grep -l 'izraz' * .c 
Grep naredbeni parametriZatim ćemo vidjeti različite varijable koje nam Grep nudi za upravljanje u Linuxu:

  • -num: S ovom opcijom, odgovarajući redovi bit će pored prethodnog i sljedećih brojeva redaka.
  • -A broj, --after-context = NUM: Prikazuje broj linija konteksta nakon što se podudaraju s naznačenim.
  • -B num, --before-context = NUM: Korištenjem ove opcije prikazat će se kontekstne linije prije onih koje odgovaraju pretraživanju.
  • -V, --verzija: Prikaz broja verzije korištenog grepa.
  • -b, --byte-offset: Ovaj parametar prikazuje pomak u bajtima od početka ulazne datoteke prije svakog retka njezina izlaza.
  • -c, --count: Broji broj redaka koji odgovaraju navedenom pojmu.
  • -h, --no-filename: Potiskivanje ispisa naziva datoteka u ispisu.
  • i, --ignore-case: Ne uzima u obzir jesu li slova velika ili mala.
  • -L, --files-without-match: Ova opcija prikazuje naziv svake ulazne datoteke u kojoj nije pronađeno podudaranje.
  • -l, --files-with-match: Prikažite naziv svake ulazne datoteke koja može generirati rezultat.
  • -n, --line-number: Mapira svaki redak izlaza s odgovarajućim brojem retka u datoteci za pretraživanje.
  • -q, --quiet: Aktivirajte nečujni način rada koji potiskuje normalni izlaz i pretraživanje završava s prvim podudaranjem.
  • -s, --silent: Potiskivanje poruka o pogrešci.
  • -v, --invert-match: Ova opcija mijenja smjer pretraživanja, odnosno prikazat će rezultate koji se ne podudaraju s pojmom za pretraživanje.
  • w, --word-regexp: Ovaj parametar odabire samo retke koji sadrže podudaranja koja čine cijele riječi.
  • -x, --line-regexp: Ova opcija odabire samo podudaranja koja se sastoje od cijelog retka.

9. Kako koristiti i instalirati naredbu Tree u Linuxu


Sada ćemo malo govoriti o naredbi Tree, kako joj i naziv govori, razvijena je za prikazivanje direktorija sustava u obliku stabla, čime se olakšava njihovo upravljanje.

Naredba Tree djeluje s rekurzivnom naredbom s popisom direktorija koja rezultira formatom stabla osmišljenim s nizom boja samo ako je postavljena varijabla okruženja LS_COLORS i izlaz je tty, u slučaju da nisu dodijeljeni argumenti, ova naredba će popisati datoteke u trenutni imenik.

Korak 1
Njegova opća sintaksa je sljedeća:

 stablo [-acdfghilnpqrstuvxACDFQNSUX] [-L razina [-R]] [-H bazaHREF] [-T naslov] [-o naziv datoteke] [--nolinks] [-P uzorak] [-I uzorak] [--inode] [ --device] [--noreport] [--dirsfirst] [--verzija] [--help] [--filelimit #] [--si] [--prune] [--du] [--timefmt format ] [--matchdirs] [-] [imenik …] 
Korak 2
Prvi korak je instaliranje naredbe Tree pokretanjem sljedeće naredbe:
 sudo apt stablo instalacije 

Korak 3
Nakon instaliranja izravno izvršavamo naredbu "stablo" za popis trenutnog direktorija u obliku stabla:

10. Kako raditi s datotekama pomoću naredbe Tree u Linuxu

Prikaz skrivenih datoteka pomoću stablaPrema zadanim postavkama, naredba Tree neće prikazivati ​​skrivene datoteke iz sigurnosnih razloga, ako ih želimo vidjeti u rezultatu, bit će moguće dodati parametar -a u tu svrhu:

 drvo -a 

POVEĆAJTE

Prikaz samo imenika s stablomU slučaju da želite da Tree generira samo unose direktorija, to će biti moguće učiniti pomoću parametra -d ovako:

 stablo -d 

POVEĆAJTE

Pregledajte cijeli put datoteka pomoću stablaNaredba Tree daje nam mogućnost ispisa prefiksa pune staze za datoteke u direktoriju pomoću parametra -f:

 stablo -f 

POVEĆAJTE

Kontrolirajte dimenziju rezultata pomoću stablaU nekim slučajevima moguće je da je generirani rezultat iznimno dug, stablo nam omogućuje kontrolu dubine stabla direktorija za njegov izlaz, za to moramo koristiti parametar -L koji zahtijeva numeričku vrijednost koja označava dopuštenu dubinu direktorija:

 stablo -d -L 2 

POVEĆAJTE

Upotrijebite selektivna imena s drvetomParametrom -l bit će moguće isključiti određene riječi iz rezultata koje generira Tree, na primjer, možemo izvesti sljedeći redak za generiranje rezultata, ali bez izraza Android:

 stablo -d -I * Android 

POVEĆAJTE

11. Parametri za korištenje s naredbom Tree u Linuxu

Parametri za korištenje sa stablomZatim će Solvetic objasniti dostupne parametre za korištenje sa stablom:

  • -a: Ispis svih datoteka. Imajte na umu da prema zadanim postavkama stablo ne ispisuje skrivene datoteke.
  • -d: Navedite samo direktorije.
  • -l: Nastavite simbolične veze ako ukazuju na direktorije, pretvarajući se da su direktoriji.
  • -f: Ispisati prefiks pune staze objekata.
  • -x: Ostaje samo na trenutnom datotečnom sustavu.
  • -L Razina: omogućuje vam da definirate najveću dubinu prikaza stabla direktorija u rezultatu.
  • -R: Djeluje rekurzivno prelazeći stablo u direktorije svake razine i u svakom od njih će se izvršiti. stablo ponovno dodavanjem `-o 00Tree.html '.
  • -P uzorak: Navedite samo datoteke koje odgovaraju zamjenskom uzorku.
  • -I uzorak: Ne navodite datoteke koje odgovaraju zamjenskom uzorku.
  • -matchdirs. Ova opcija navodi odgovarajući uzorak koji omogućuje da se uzorak primijeni samo na nazive direktorija.
  • --prune: Ovaj parametar uklanja prazne direktorije iz ispisa.
  • --noreport: Preskočite ispis izvješća o datoteci i direktoriju na kraju popisa izvedenog stabla.

Opće opcije stablaOvo su opće dostupne opcije stabla, ali imamo i ekskluzivne parametre za datoteke, a to su:

  • -q: Ispis znakova koji se ne mogu ispisivati ​​u nazivima datoteka.
  • -N: Ispisuje znakove koji se ne mogu ispisati.
  • -Q: Njegova je funkcija dodijeliti imena datotekama u dvostrukim navodnicima.
  • -p: Ispišite vrstu datoteke i dopuštenja za svaku datoteku u direktoriju.
  • -u: Ispišite korisničko ime ili UID datoteke.
  • -s: Ispišite veličinu svake datoteke u bajtima, kao i njezin naziv.
  • -g Ispišite naziv grupe ili GID datoteke.
  • -h: Njegova je funkcija ispisati veličinu svake datoteke na način čitljiv ljudima.
  • --du: Djelujte na svaki direktorij generirajući izvješće o njegovoj veličini uključujući veličine svih njegovih datoteka i poddirektorija.
  • --si: Koristi ovlasti od 1000 (SI jedinica) za prikaz veličine datoteke.
  • -D: Ispisuje datum posljednje izmjene datoteka.
  • -F: Vaš je zadatak dodati `/ 'za direktorije, a` =' za datoteke utičnice, `* 'za izvršne datoteke, a`>' za vrata (Solaris) i `| ' za FIFO.
  • --inodes: Ispišite inode broj datoteke ili direktorija.
  • --device: Ispišite broj uređaja kojem datoteka ili imenik pripada u ispisu.
  • -v: Poredajte izlaz prema verziji.
  • -U: Ne naručuje rezultate.
  • -r: Sortirajte izlaz obrnutim redoslijedom.
  • -t: sortirajte rezultate na temelju posljednjeg izmijenjenog vremena umjesto po abecedi.
  • -S: Aktivira CP437 linijske grafikone
  • -n: Onemogućuje obojenje rezultata.
  • -C: Aktivira obojenje.
  • -X: Aktivira XML izlaz.
  • -J: Aktivirajte JSON izlaz.
  • -H baseHREF: Aktivira HTML izlaz, uključujući HTTP reference.
  • --help: Pristupite pomoći stabla pristupa.
  • --version: Prikazuje korištenu verziju naredbe Tree.

Pomoću ove dvije naredbe bilo je moguće na mnogo opsežniji način upravljati svakim zadatkom koji se treba izvršiti na datotekama u Linuxu, nadopunjujući zadatke pretraživanja ili upravljanja na njima i po potrebi pristupajući opsežnim rezultatima.

wave wave wave wave wave