logo

grep-komento Unixissa/Linuxissa

Thegrep>komento Unix/Linuxissa on tehokas työkalu, jota käytetään tiedostojen tekstimallien etsimiseen ja käsittelemiseen. Sen nimi on johdettu ed (editori) -komennolla g/re/p (hakee maailmanlaajuisesti säännöllistä lauseketta ja tulostaa vastaavat rivit), mikä kuvastaa sen ydintoimintoa.grep>sitä käyttävät laajasti ohjelmoijat, järjestelmänvalvojat ja käyttäjät sen tehokkuuden ja monipuolisuuden vuoksi tekstidatan käsittelyssä. Tässä artikkelissa tutkimme sen eri puoliagrep>komento.

Sisällysluettelo



Grep-komennon syntaksi Unixissa/Linuxissa

Kohteen ` perussyntaksi grep`> komento on seuraava:

  grep [options] pattern [files]>

Tässä,

[> options> ]>: Nämä ovat komentorivin lippuja, jotka muokkaavat sovelluksen toimintaagrep>.



[> pattern> ]>: Tämä on säännöllinen lauseke, jota haluat etsiä.

[> file> ]>: Tämä on niiden tiedostojen nimi, joista haluat etsiä. Voit määrittää useita tiedostoja samanaikaista hakua varten.

Vaihtoehdot ovat käytettävissä grep-komennossa

Vaihtoehdot



Kuvaus

-c

Tämä tulostaa vain niiden viivojen määrän, jotka vastaavat kuviota

-h

Näytä vastaavat rivit, mutta älä näytä tiedostonimiä.

i

Ohitetaan, kirjainkoon täsmääminen

-l

leksikografisesti

Näyttää vain tiedostonimien luettelon.

-n

Näytä vastaavat rivit ja niiden rivinumerot.

-sisään

Tämä tulostaa kaikki viivat, jotka eivät vastaa kuviota

-e exp

Määrittää lausekkeen tällä valinnalla. Voidaan käyttää useita kertoja.

-f tiedosto

Ottaa kuviot tiedostosta, yhden per rivi.

-JA

Käsittelee kuviota laajennettuna säännöllisenä lausekkeena (ERE)

-Sisään

Yhdistä koko sana

-O

Tulosta vain vastaavan rivin vastaavat osat ja kukin tällainen osa erilliselle tulosteen riville.

-A n

Tulostaa haetun rivin ja n-rivin tuloksen jälkeen.

-B n

Tulostaa haun rivin ja n rivin ennen tulosta.

-C n

Tulostaa haun rivin ja n riviä ennen tulosta.

Esimerkkikomennot

Harkitse alla olevaa tiedostoa syötteenä.

cat>geekfile.txt>>  

unix on loistava käyttöjärjestelmä. unix kehitettiin Bell Labsissa.

opettele käyttöjärjestelmä.

Unix linux kumman valitset.

uNix on helppo oppia.unix on monen käyttäjän käyttöjärjestelmä.Opi unix .unix on tehokas.

Käytännön esimerkki grep-komennosta Linuxissa

Vaihtoehto -i mahdollistaa merkkijonon kirjainkootun etsimisen annetusta tiedostosta epäherkästi. Se vastaa sanoja kuten UNIX, Unix, unix.

Lähtö:

Kirjainkoolla ei ole merkitystä haku

Kirjainkoolla ei ole merkitystä haku

2. Osumien määrän näyttäminen käyttämällä grep

Voimme löytää rivien lukumäärän, jotka vastaavat annettua merkkijonoa/mallia

grep -c 'unix' geekfile.txt>

Lähtö:

Näyttää otteluiden lukumäärän

Näyttää otteluiden lukumäärän

3. Näytä kuviota vastaavat tiedostonimet käyttämällä grep

Voimme vain näyttää tiedostot, jotka sisältävät annetun merkkijonon/mallin.

grep -l 'unix' *>

tai

grep -l 'unix' f1.txt f2.txt f3.xt f4.txt>

Lähtö:

Kuviota vastaava tiedostonimi

Kuviota vastaava tiedostonimi

4. Tiedoston kokonaisten sanojen tarkistaminen grep-komennolla

Oletuksena grep vastaa annettua merkkijonoa/mallia, vaikka se löytyisi tiedostosta alimerkkijonona. Vaihtoehto -w grepille saa sen vastaamaan vain kokonaisia ​​sanoja.

grep -w 'unix' geekfile.txt>

Lähtö:

tarkastaa kokonaisia ​​sanoja tiedostossa

tarkastaa kokonaisia ​​sanoja tiedostossa

5. Vain vastaavan kuvion näyttäminen Käytä grep

Oletusarvoisesti grep näyttää koko rivin, jolla on vastaava merkkijono. Voimme saada grep näyttämään vain vastaavan merkkijonon käyttämällä -o-vaihtoehtoa.

grep -o 'unix' geekfile.txt>

Lähtö:

Näyttää vain vastaavan kuvion

Näyttää vain vastaavan kuvion

6. Näytä rivinumero näyttäessäsi lähtöä käyttämällä grep -n

Jos haluat näyttää tiedoston rivinumeron, jonka rivi vastaa.

grep -n 'unix' geekfile.txt>

Lähtö:

Näytä rivinumero samalla kun tuloste näytetään

Näytä rivinumero samalla kun tuloste näytetään

7. Käänteinen kuviosovitus käyttämällä grep

Voit näyttää rivit, jotka eivät vastaa määritettyä hakumerkkijonomallia käyttämällä -v-vaihtoehtoa.

grep -v 'unix' geekfile.txt>

Lähtö:

Käänteinen kuviosovitus

Käänteinen kuviosovitus

8. Merkkijonolla alkavien rivien yhdistäminen grep-komennolla

Säännöllinen lausekemalli ^ määrittää rivin alun. Tätä voidaan käyttää grepissä sovittamaan rivit, jotka alkavat annetulla merkkijonolla tai kuviolla.

grep '^unix' geekfile.txt>

Lähtö:

Merkkijonolla alkavien rivien yhdistäminen

Merkkijonolla alkavien rivien yhdistäminen

9. Merkkijonoon päättyvien rivien yhdistäminen käyttämällä grep

Säännöllisen lausekkeen $ malli määrittää rivin lopun. Tätä voidaan käyttää grepissä sovittamaan rivit, jotka päättyvät annettuun merkkijonoon tai kuvioon.

grep 'os$' geekfile.txt>

10.Määrittää lausekkeen -e-vaihtoehdolla

Voidaan käyttää useita kertoja:

grep –e 'Agarwal' –e 'Aggarwal' –e 'Agrawal' geekfile.txt>

11. -f file option Ottaa kuviot tiedostosta, yksi riviä kohden

cat pattern.txt>

Agarwal
Aggarwal
Agrawal

grep –f pattern.txt geekfile.txt>

12. Tulosta n tiettyä riviä tiedostosta käyttämällä grep

-A tulostaa haetun rivin ja n riviä tuloksen jälkeen, -B tulostaa haetun rivin ja n riviä ennen tulosta, ja -C tulostaa haetun rivin ja n riviä tuloksen jälkeen ja ennen.

Syntaksi:

grep -A[NumberOfLines(n)] [search] [file] grep -B[NumberOfLines(n)] [search] [file] grep -C[NumberOfLines(n)] [search] [file]>

Esimerkki:

grep -A1 learn geekfile.txt>

Lähtö:

Tulosta tiedostosta n tiettyä riviä

Tulosta tiedostosta n tiettyä riviä

13. Etsi kuviota rekursiivisesti D irectory

-R tulostaa haetun kuvion annetusta hakemistosta rekursiivisesti kaikkiin tiedostoihin.

Syntaksi:

grep -R [Search] [directory]>

Esimerkki:

grep -iR geeks /home/geeks>

Lähtö:

./geeks2.txt:Well Hello Geeks ./geeks1.txt:I am a big time geek ---------------------------------- -i to search for a string case insensitively -R to recursively check all the files in the directory.>

Johtopäätös

Tässä artikkelissa keskustelimmegrep>komento Linuxissa, joka on tehokas tekstihakutyökalu, joka käyttää säännöllisiä lausekkeita löytääkseen kuvioita tai tekstiä tiedostoista. Se tarjoaa erilaisia ​​vaihtoehtoja, kuten kirjainkokoa, vastaavuuksien laskemista ja tiedostojen nimien luetteloimista. Mahdollisuus etsiä rekursiivisesti, käyttää säännöllisten lausekkeiden lippuja ja mukauttaa tulostusta,grep>on Linux-käyttäjille tärkeä työkalu tekstiin liittyvien tehtävien tehokkaaseen käsittelyyn. Masterointigrep>parantaa kykyäsi työskennellä tekstidatan kanssa Linux-ympäristössä.