Comanda Pipe, Grep și Sort în Linux / Unix cu exemple

Cuprins:

Anonim

În acest tutorial, vom învăța-

  • Ce este un Pipe în Linux?
  • comenzi „pg” și „more”
  • Comanda „grep”
  • Comanda „sortare”
  • Ce este un filtru?

Ce este un Pipe în Linux?

Pipe este o comandă în Linux care vă permite să utilizați două sau mai multe comenzi, astfel încât ieșirea unei comenzi să servească drept intrare la următoarea. Pe scurt, ieșirea fiecărui proces direct ca intrare la următorul ca o conductă. Simbolul „|” denotă o țeavă.

Țevile vă ajută să amestecați două sau mai multe comenzi în același timp și să le rulați consecutiv. Puteți utiliza comenzi puternice care pot efectua sarcini complexe într-o clipită.

Să înțelegem acest lucru cu un exemplu.

Când utilizați comanda „pisică” pentru a vizualiza un fișier care se întinde pe mai multe pagini, promptul sare rapid la ultima pagină a fișierului și nu vedeți conținutul în mijloc.

Pentru a evita acest lucru, puteți canaliza ieșirea comenzii „pisică” la „mai puțin”, ceea ce vă va arăta o singură lungime de derulare a conținutului la un moment dat.

cat filename | less 

O ilustrare ar clarifica.

Faceți clic aici dacă videoclipul nu este accesibil

comenzi „pg” și „more”

În loc de „mai puțin”, puteți utiliza și.

cat Filename | pg 

sau

cat Filename | more

Și puteți vizualiza fișierul în biți digerabili și derulați în jos apăsând pur și simplu tasta Enter.

Comanda „grep”

Să presupunem că doriți să căutați o anumită informație în codul poștal dintr-un fișier text.

Puteți parcurge manual conținutul pentru a urmări informațiile. O opțiune mai bună este să folosiți comanda grep. Acesta va scana documentul pentru informațiile dorite și va prezenta rezultatul într-un format dorit.

Sintaxă:

grep search_string

Să-l vedem în acțiune -

Aici, comanda grep a căutat în fișierul „eșantion”, pentru șirurile „Apple” și „Eat”.

Opțiunile următoare pot fi utilizate cu această comandă.

Opțiune Funcţie
-v Afișează toate liniile care nu se potrivesc cu șirul căutat
-c Afișează numai numărul de linii potrivite
-n Afișează linia potrivită și numărul acesteia
-i Potriviți ambele (majuscule și minuscule)
-l Afișează doar numele fișierului cu șirul

Să încercăm prima opțiune „-i” pe aceeași utilizare a fișierului de mai sus -

Folosind opțiunea „i” grep a filtrat șirul „a” (fără majuscule) dintre toate liniile.

Comanda „sortare”

Această comandă ajută la sortarea alfabetică a conținutului unui fișier.

Sintaxa acestei comenzi este:

sort Filename

Luați în considerare conținutul unui fișier.

Folosind comanda sortare

Există și extensii la această comandă și sunt listate mai jos.

Opțiune

Funcţie

-r

Inversează sortarea

-n

Sortează numeric

-f

Sortare insensibilă la majuscule

Exemplul de mai jos arată sortarea inversă a conținutului din fișierul „abc”.

Ce este un filtru?

Linux are o mulțime de comenzi de filtrare precum awk, grep, sed, spell și wc. Un filtru preia intrarea de la o singură comandă, face unele prelucrări și dă ieșire.

Când introduceți două comenzi, ieșirea "filtrată" a primei comenzi este dată următoarei.

Să înțelegem acest lucru cu ajutorul unui exemplu.

Avem următorul fișier „eșantion”

Vrem să evidențiem doar liniile care nu conțin caracterul „a”, dar rezultatul ar trebui să fie în ordine inversă.

Pentru aceasta, se poate utiliza următoarea sintaxă.

cat sample | grep -v a | sort - r

Să ne uităm la rezultat.

Rezumat:

  • Țevi "|" trimite ieșirea unei comenzi ca intrare a altei comenzi.
  • Filtrul preia intrarea dintr-o singură comandă, efectuează unele prelucrări și dă ieșire.
  • Comanda grep poate fi utilizată pentru a găsi șiruri și valori într-un document text
  • Conducerea prin grep trebuie să fie una dintre cele mai frecvente utilizări
  • Comanda „sort” sortează conținutul unui fișier în ordine alfabetică
  • mai puțin, pg și mai multe comenzi sunt folosite pentru împărțirea unui fișier lung în biți lizibili