Süntaks
Grep [muster] [fail]Muster peaks olema sõna või sümbol, mida tuleb failist otsida.
Eeldused
Grepi edukaks toimimiseks oma süsteemis peab teil olema installitud Linuxi operatsioonisüsteem. Pärast seadistamist annate kasutajale teabe, et tal oleks õigused installitud rakendustele juurde pääseda. Edasi liikudes minge terminali käsureale, kasutades kiirklahvi ctrl + alt + T.
Grepi installimine
$ Sudo apt-get install grepKui te pole veel Grepi installinud, saate selle käsu abil installida Ubuntu Grepi hoidlad.
Grepi käsiraamat
Grepi käskude tundmaõppimiseks võime minna manulehele. Grep on väga mitmekülgne ja võimaldab kasutajatel seda keerukalt kasutada.
$ Mees grep
Mõned näited, mis aitavad Grepi funktsionaalsust mõista, on järgmised:
-Eiratakse juhtumi eristamist
-n printige väljundiga rea number
-r otsi kõiki Linuxi katalooge
-color Kuvab sobitatud tulemuse värvides
Kuva kõik failid
Kui teil on juba Ubuntu failid ja soovite need kõigi failinimede ja laienduste nägemiseks loetleda, võite kasutada järgmist viidatud käsku.
$ lsKõigi loodud failide kuvamiseks kasutate lihtsalt käsku “ls”.
Faili loomine on olemas, kui see pole juba olemas
Faili otsimise funktsionaalsuse mõistmiseks peame oma süsteemis looma faili või failid. Kui teil pole ühtegi faili, peaksite failid looma. Linuxi faile tehakse mitmel viisil. Lihtsat meetodit, mida kavatseme kasutada, kirjeldatakse järgmiselt.
$ echo “text”> failinimiKavasõna kasutatakse andmete kuvamiseks Linuxi käsus. Selle käsu abil saab kasutaja luua sama käsu abil faili ja sisestada sinna andmed. Konkreetses näites on faili nimi fail20.txt. Kuna fail sisaldab teksti, kasutasime faililaiendit.txt.”
Samamoodi on failide loomise teine näide see, et oleme loonud korraga rohkem kui ühe faili.
Otsige failist sõna sortimise järgi
Linuxi faili saab otsida sõna kaudu. Süntaks on üsna arusaadav.
$ grep “tehniline” fail *See käsk näitab lisaks failinimele ka selles sisalduvaid andmeid. Selles näites teate, et sõna, mille kaudu oleme otsinud, on esile tõstetud, et näidata selle olemasolu failis. Pealegi on failinimi kirjutatud algselt, "File *" tähendab selle konkreetse sõna otsimist kõigist failidest. Nii aitab üks sõna failinimede väljundi saamiseks.
Failist otsimine, kasutades “-l”
“-L” on käsk, mida kasutatakse ainult Linuxi failinimede kuvamiseks.
$ grep -l minu fail *Nagu eespool mainitud käsk, on “minu” sõna, mida soovime failidest otsida. Nagu me eespool kirjeldasime, tähendab see fail * otsimist kõigist süsteemis loodud failidest. Me võime täheldada, et failinimesid on neli.txt ”laiendid ja üks ilma pikendusteta. See tähendab, et kuvatakse kõik failid, millel on konkreetsed sõnad. Edasi näeme, kui konkreetselt saame faili otsida, mainides laiendust.
Otsige failist faililaiendi järgi
Eelmises näites oleme näinud, et sortides kuvati kõik failid. Kuid konkreetsete laienduste failinimede kuvamiseks allpool kirjutatud käsku kasutatakse.txt ”tähistab faili laienditüüpi, nii et kõik failid peaksid olema selle laiendiga.
See on põhiline diskrimineerimine kahe viimase näite vahel, mida hoitakse faililaiendi kaudu.
$ grep -l "minu" *.txt
Otsige failist, kasutades "-e"
Võib esineda olukord, kus soovite failidest otsida rohkem kui ühe sõna abil erinevates failides. Seda tüüpi stsenaariumide korral peaksime kasutama käsureavalikut "-e". Näiteks soovite otsida nendest failidest, millel on kolm konkreetset sõna, siis on see käsk soovitatav. Otsimist rakendatakse kõigile teie praeguses töökataloogis olevatele failidele. Need failid peavad olema tekstilaiendiga, kuna tekst on piiratud.
$ grep -e minu -e aqsa -e tehniline *.txtGrep, Aqsa ja Technical on failide otsimiseks kolm sõna. Kõik need sõnad on esile tõstetud kõikjal, kus neid sõnu teatud failides leidub. Failinimesid mainitakse alguses. Failis on olemas ainult ühe sõna olemasolu.
Otsige ühe faili andmeid
Eelmistes näidetes oleme näinud, et failinime kuvatakse koos failis olevate andmetega. Kui me ei tea, kas failis on andmeid või kui üks sõna on meeldejääv, saame faili abil sõna abil otsida.
$ grep 'Aqsa' fail20.txtSelles näites tõmbab käsk failis oleva sõna abil terved andmed.
Andmete otsimine rohkem kui ühe faili kaudu
Nagu eelmises näites, toimub ka siin otsimine ühe sõna, kuid kahes failis. Mõlemad failid on tekstilaiendiga ja mõlemas failis olev sõna on esile tõstetud. Samuti kuvatakse failinimesid, kui oleme mõlema failinime abil otsinud.
$ grep 'Aqsa' fail20.txt-fail23.txt
Kuva failis sõna olemasolu
Faili olemasolu või sõnade olemasolu kontrollimiseks failis. Kasutatakse lippu -q ja see töötab konkreetsete terminite otsimiseks kõigist failidest, mille väljundina kuvatakse „1” või „0”. Kui tuleb „1“, tähendab see, et vastet pole, kuid kui leitav leidub, näitab see „0“.
Järeldus
Kasutajate teavitamiseks oleme iga näidet üksikasjalikult selgitanud. Seda rakendatakse Grepi faili jaoks, mis otsib hõlpsalt faile ja Linuxi keskkonnas asuvaid faile.