Terminalul Linux este plin de comenzi utile, dar puține sunt la fel de puternice ca cele aparent simple grep. Inseamna Imprimare globală a expresiei regulate, imprimând rezultatele căutărilor de sistem definite de utilizator pentru colecții de caractere.
grep este extrem de puternic, dar poate fi destul de intimidant de utilizat, așa că astăzi, veți învăța câteva elemente de bază. Dacă sunteți în căutarea unor informații în documentele de pe computer, de obicei, veți căuta mai multe cuvinte deodată.
Acest articol se concentrează pe cum să căutați mai multe șiruri de caractere folosind grep și vă va arăta câteva sfaturi și trucuri similare pentru utilizarea grep în general.
Căutarea mai multor șiruri în grep
Înainte de a începe, va trebui să vă asigurați că sunteți familiarizat cu câteva elemente de bază Linux. În primul rând, va trebui să puteți afișa un terminal - pe majoritatea sistemelor, faceți acest lucru cu combinația de taste Ctrl + Alt + T, sau prin meniul de aplicații.
De asemenea, va trebui să fiți familiarizat cu cum să faceți referire la fișiere după cale folosind terminalul. De exemplu, dacă doriți să introduceți calea pentru un document text aflat într-un folder numit
muncă în interiorul Acasă folder, l-ai face referire folosind acest format:~/work/textdocument.txt
Această sintaxă, folosind ~ și /, urmat de locația fișierului în folderul de acasă, este ceea ce veți folosi pentru a arăta comenzii grep ce fișiere să căutați.
Să presupunem, de exemplu, că ați vrut să găsiți fiecare apariție a cuvintelor albina și Vanessa într-un document text care conține scenariul din filmul Bee din 2007. Sintaxa arată astfel:
grep -E 'albină| Vanessa' ~/work/beescript.txt
Când rulați această comandă, veți primi înapoi o listă cu fiecare linie din document care conține cuvântul albina sau cuvântul Vanessa.
Să descompunem puțin acea comandă:
grep -E
Prima parte rulează comanda grep cu -E opțiune. Aceasta direcționează grep să caute folosind un Eexpresie regulată extinsă. Diferite tipuri de expresii regulate sunt un subiect pentru o altă zi – iar stăpânirea expresiilor regulate necesită a durata de viață — dar în scopul acestui tutorial, comanda bold-E vă permite să căutați mai multe șiruri folosind grep.
grep -E 'albină| Vanessa
Următoarea parte conține șirurile pe care doriți să le căutați. Ele trebuie să fie cuprinse între ghilimele simple, cu un tub între fiecare cuvânt.
grep -E 'albină| Vanessa' ~/work/beescript.txt
Ultima parte a apelului grep ia calea către fișierul pe care doriți să îl căutați; în acest caz, scenariul filmului Bee din 2007.
Sfaturi și trucuri grep
Acesta este un început grozav, dar există o mulțime de moduri practice de a folosi grep. Acum că știți cum să găsiți mai multe șiruri, iată câteva comenzi care pot duce acea putere la următorul nivel:
grep -E 'albină| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt
Aceasta este foarte asemănătoare cu comanda anterioară, cu excepția faptului că returnează toate liniile care conțin bee și Vanessa atât din scenariul filmului Bee, cât și din propriul fișier text al poveștii Bee.
Totuși, toate aceste mențiuni despre albine devin destul de greu de citit.
grep -E 'albină| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt | Mai puțin
Aceasta ia aceeași comandă grep și o conectează Mai puțin. Aceasta deschide rezultatele într-un format ușor de navigat, permițându-vă să derulați în sus și în jos folosind j și k tastele și căutați în rezultate folosind / cheie.
grep -E 'albină| Vanessa ~/work/beescript.txt ~/fun/mybeestory.txt > beeresults.txt
La fel ca și comanda less, comanda menționată mai sus preia rezultatele grep și le salvează pe toate într-un fișier separat. Puteți deschide apoi acest fișier în editorul de text preferat pentru editare ulterioară.
Legate de: Cheat Sheet de referință pentru comenzile Linux
Lucrul cu grep în Linux
Sperăm că vă faceți o idee despre cât de puternic poate fi grep - și acest lucru nici măcar nu zgârie suprafața. Du-te și grep!
Te-ai întrebat vreodată ce înseamnă Grep? Iată povestea adevărată din spatele creării Grep.
Citiți în continuare
- Linux
- Comenzi Linux
- Linux Bash Shell
Ian Buckley este jurnalist, muzician, interpret și producător video independent, care locuiește în Berlin, Germania. Când nu scrie sau pe scenă, el se chinuiește cu electronice sau coduri de bricolaj, în speranța de a deveni un om de știință nebun.
Aboneaza-te la newsletter-ul nostru
Alăturați-vă buletinului nostru informativ pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!
Click aici pentru a te abona