Dažreiz lietotāji saskaras ar nepieciešamību meklēt konkrētu informāciju jebkurā failos. Bieži konfigurācijas dokumenti vai citi tilpuma dati satur lielu skaitu līniju, tāpēc manuāli atrast nepieciešamos datus nedarbojas. Tad viens no iebūvētajiem komandām operētājsistēmās Linux nāk glābšanas, kas ļaus sākt rindas burtiski sekundēs.
Mēs izmantojam grep komandu Linux
Attiecībā uz atšķirībām starp Linux izplatīšanu, šajā gadījumā viņiem nav neviena loma, jo grep komandu jūs interesē noklusējuma ir pieejama lielākajā daļā būvē un ir absolūti vienāds. Šodien mēs vēlētos apspriest ne tikai grepa darbību, bet arī, lai izjauktu galvenos argumentus, kas ļauj ievērojami vienkāršot meklēšanas procedūru.
Izveidojiet kaķu komandu + faila nosaukumu, ja vēlaties apskatīt pilnu saturu. Sīkākas instrukcijas darbam ar šo komandu meklē citā rakstā, atsaucoties tālāk.
Lasīt vairāk: kaķu komandas piemēri Linux
Pateicoties iepriekšminēto darbību izpildei, varat izmantot GREP, atrodoties vēlamajā direktorijā, nenorādot pilnu ceļu uz failu.
Standarta meklēšana ar saturu
Pirms pāriet uz visu pieejamo argumentu izskatīšanu, ir svarīgi atzīmēt parasto satura meklēšanu. Tas būs noderīgi brīdī, kad ir nepieciešams atrast vienkāršu saskaņošanu un parādīt visas atbilstošās līnijas.
- Komandu uzvednē ievadiet grep vārdu testfile, kur vārds ir vēlamā informācija, un testfile ir faila nosaukums. Meklējot, atrodoties ārpus mapes, norādiet pilnu veidu, kā piemērs / mājas / lietotājs / mape / faila nosaukums. Pēc ievadīšanas komandu noklikšķiniet uz taustiņa Enter.
- Tas paliek tikai, lai iepazītos ar pieejamajām iespējām. Ekrānā parādīsies pilnas līnijas, un galvenās vērtības tiks izcelti sarkanā krāsā.
- Ir svarīgi ņemt vērā un reģistrējieties vēstulēs, jo Linux kodējums nav optimizēts, lai meklētu lielas vai mazas rakstzīmes. Ja vēlaties apiet reģistra definīciju, ievadiet grep -i "vārdu" testfile.
- Kā jūs varat redzēt, nākamajā ekrānuzņēmumā rezultāts ir mainījies, un tika pievienota vēl viena jauna līnija.
Meklēt ar virknes uztveršanu
Dažreiz lietotājiem ir jāatrod ne tikai precīza atbilstība rindām, bet arī, lai noskaidrotu informāciju, kas nāk pēc tiem, piemēram, ziņojot par noteiktu kļūdu. Tad pareizais risinājums piemēros atribūtus. Ievadiet grep -A3 "vārdu" testfile konsole, lai iespējotu rezultātā un trīs nākamās līnijas pēc sakritības. Jūs varat rakstīt -A4, tad četras līnijas tiks notverti, nav ierobežojumu.
Ja tā vietā - jūs lietojat argumentu -b + rindu skaitu, kā rezultātā tiks parādīts datu ievades punkts.
Arguments ir, savukārt, uztver līnijas ap atslēgvārdu.
Zemāk jūs varat redzēt šos argumentu piešķiršanas piemērus. Lūdzu, ņemiet vērā, ka ir nepieciešams ņemt vērā reģistru un rakstīt dubultās pēdiņas.
Grep -b3 "vārds" testfile
Grep -c3 "vārds" testfile
Meklējiet atslēgvārdus rindu sākumā un beigās
Nepieciešamība definēt atslēgvārdu, kas stāv sākumā vai beigās līnijas, visbiežāk notiek darba laikā ar konfigurācijas failiem, kur katra līnija ir atbildīga par vienu parametru. Lai redzētu precīzu ierakstu sākumā, ir nepieciešams reģistrēt grep "^ vārdu" testfile. Zīme ^ ir atbildīga par šīs opcijas piemērošanu.
Satura meklēšana līniju beigās notiek aptuveni vienāds princips, tikai citātos jāpievieno $ zīme, un komanda atradīs šo veidu: grep "vārdu $" testfile.
Meklēt numurus
Meklējot vēlamās vērtības, lietotājam ne vienmēr ir informācija par precīzu vārdu, kas atrodas virknē. Tad meklēšanas procedūru var izdarīt, izmantojot skaitļus, kas dažkārt ievērojami vienkāršo uzdevumu. Tas ir nepieciešams tikai izmantot komandu veidā grep "[0-7]" testfile, kur "[0-7]" - vērtību diapazons, un testfile ir nosaukums faila skenēšanai.
Visu direktoriju failu analīze
Visu objektu skenēšana vienā mapē sauc par rekursīvu. Lietotājam ir jāpiemēro tikai viens arguments, kas analizē visus mapju failus un parādīs atbilstošas līnijas un to atrašanās vietu. Jums būs jāievada grep -r "vārds" / mājas / lietotājs / mape, kur / mājas / lietotājs / mape ir ceļš uz skenēšanas direktoriju.
Failu glabāšana tiks parādīta zilā krāsā, un, ja jūs vēlaties saņemt rindas bez šīs informācijas, piešķiriet citu argumentu, lai komanda saņemtu šādu grep -h -r vārdu "+ ceļu uz mapi.
Precīza meklēšana saskaņā ar
Raksta sākumā mēs jau esam runājuši par parasto meklēšanu pēc vārdiem. Tomēr ar šo metodi rezultātos tiks parādītas papildu kombinācijas. Piemēram, jūs atradīsiet lietotāja vārdu, bet komanda arī parādīs lietotāju123, parolesuzņēmēju un citas sakritības, ja tādas ir. Lai izvairītos no šāda rezultāta, piešķiriet argumentu -W (grep -w vārdu "+ faila nosaukumu vai tās atrašanās vietu).
Šī opcija tiek veikta un kad jums ir nepieciešams meklēt vairākus precīzus atslēgvārdus. Šajā gadījumā ievadiet egrep -w 'Word1 | Word2' liecība. Lūdzu, ņemiet vērā, ka šajā gadījumā, burts e pievieno grep, un cenas ir viena.
Stīgu meklēšana bez noteikta vārda
Apskatītā lietderība var ne tikai atrast vārdus failos, bet arī parādīt līnijas, kurās nav lietotāja norādītā vērtība. Pēc tam, pirms ievadot atslēgu vērtību, un fails tiek pievienots -V. Pateicoties tam, aktivizējot komandu, jūs redzēsiet tikai attiecīgos datus.
Sintakses grep savāc vairākus argumentus, kurus var īsi paziņot:
- -Es - parādīt tikai failu nosaukumus, kas piemēroti meklēšanas kritērijos;
- -s - atslēgt paziņojumus par konstatētajām kļūdām;
- -n - parādīt rindas numuru failā;
- -b - parādīt bloka numuru līnijas priekšā.
Nekas neļauj jums piemērot vairākus argumentus par vienu uzturēšanos, vienkārši ievadiet tos pa telpu, neaizmirstot apsvērt reģistru.
Šodien mēs izjaucām GREP komandu, kas pieejama Linux sadalījumos. Tas ir viens no standartiem un bieži izmanto. Jūs varat izlasīt par citiem populāriem rīkiem un to sintaksi atsevišķā materiālā atbilstoši šādai saitei.
Skatiet arī: Bieži izmanto komandas terminālī Linux