Ukaz Pipe, Grep in Sort v Linux / Unix s primeri

Kazalo:

Anonim

V tej vadnici se bomo naučili -

  • Kaj je Pipe v Linuxu?
  • ukazi 'pg' in 'more'
  • Ukaz 'grep'
  • Ukaz 'razvrsti'
  • Kaj je filter?

Kaj je Pipe v Linuxu?

Pipe je ukaz v Linuxu, ki vam omogoča uporabo dveh ali več ukazov, tako da izhod enega ukaza služi kot vhod za naslednjega. Skratka, rezultat vsakega procesa neposredno kot vhod v naslednjega, kot je cevovod. Simbol "|" označuje cev.

Cevi vam pomagajo zmešati dva ali več ukazov hkrati in jih izvajati zaporedoma. Uporabite lahko močne ukaze, ki lahko v trenutku izvajajo zapletene naloge.

Razumimo to na primeru.

Ko za ogled datoteke, ki se razteza na več straneh, uporabite ukaz 'mačka', poziv hitro skoči na zadnjo stran datoteke in na sredini ne vidite vsebine.

Da bi se temu izognili, lahko izhod ukaza 'mačka' usmerite v 'manj', kar vam bo hkrati pokazalo le eno dolžino drsenja vsebine.

cat filename | less 

Ilustracija bi to jasno pokazala.

Kliknite tukaj, če video ni dostopen

ukazi 'pg' in 'more'

Namesto „manj“ lahko uporabite tudi.

cat Filename | pg 

ali

cat Filename | more

Datoteko si lahko ogledate v prebavljivih bitih in se pomaknete navzdol, tako da preprosto pritisnete tipko enter.

Ukaz 'grep'

Recimo, da želite po besedilni datoteki poiskati določeno informacijo po poštni številki.

Vsebino lahko ročno posnamete sami, da izsledite informacije. Boljša možnost je uporaba ukaza grep. V dokumentu bo skeniral želene informacije in rezultat prikazal v želeni obliki.

Sintaksa:

grep search_string

Poglejmo v akciji -

Tu je ukaz grep v datoteki "sample" iskal niz "Apple" in "Eat".

S tem ukazom lahko uporabite naslednje možnosti.

Možnost Funkcija
-v Prikaže vse vrstice, ki se ne ujemajo z iskanim nizom
-c Prikaže samo število ujemajočih se vrstic
-n Prikaže ujemajočo se vrstico in njeno številko
-jaz Ujemajte se z malimi in malimi črkami
-l Prikaže samo ime datoteke z nizom

Preizkusimo prvo možnost '-i' na isti zgoraj navedeni datoteki -

Z uporabo možnosti 'i' je grep iz vseh vrstic filtriral niz 'a' (ne razlikuje med velikimi in malimi črkami).

Ukaz 'razvrsti'

Ta ukaz pomaga pri razvrščanju vsebine datoteke po abecedi.

Sintaksa tega ukaza je:

sort Filename

Upoštevajte vsebino datoteke.

Uporaba ukaza za razvrščanje

Tudi za ta ukaz obstajajo razširitve , ki so navedene spodaj.

Možnost

Funkcija

-r

Obrne razvrščanje

-n

Razvrsti številčno

-f

Razvrščanje med velikimi in malimi črkami

Spodnji primer prikazuje obratno razvrščanje vsebine v datoteki 'abc'.

Kaj je filter?

Linux ima veliko ukazov za filtriranje, kot so awk, grep, sed, spell in wc. Filter vzame vhod iz enega ukaza, opravi nekaj obdelave in da izhodne podatke.

Ko pripeljete dva ukaza, se izhod prvega ukaza "filtrira" naslednjemu.

Razumimo to s pomočjo primera.

Imamo naslednjo datoteko "vzorec"

Izpostaviti želimo samo vrstice, ki ne vsebujejo znaka 'a', rezultat pa mora biti v obratnem vrstnem redu.

Za to lahko uporabimo naslednjo sintakso.

cat sample | grep -v a | sort - r

Oglejmo si rezultat.

Povzetek:

  • Cevi '|' pošlji izhod enega ukaza kot vhod drugega.
  • Filter vzame vhod iz enega ukaza, opravi nekaj obdelave in da izhodne podatke.
  • Z ukazom grep lahko poiščete nize in vrednosti v besedilnem dokumentu
  • Cevovodi skozi grep morajo biti ena najpogostejših načinov uporabe
  • ukaz 'sort' razvrsti vsebino datoteke po abecedi
  • manj, pg in več ukazov se uporabljajo za razdelitev dolge datoteke na berljive bitove