Conto Mangpaat Of The Linux Ubuntu Komando grep

perkenalan

The Linux Ubuntu paréntah grep dipaké salaku padika keur nyaring input.

GREP nangtung pikeun Global Babasan printer Biasa sahingga dina urutan ngagunakeun eta éféktif, Anjeun kudu gaduh sababaraha pangaweruh ngeunaan ungkapan biasa.

Dina artikel ieu, Kuring keur bade ningalikeun maneh sababaraha conto nu bakal nulungan anjeun ngartos paréntah grep.

01 of 09

Kumaha Ka Milarian Pikeun A string Dina Hiji File Maké GREP

The Linux Ubuntu grep Komando.

Ngabayangkeun anjeun gaduh file téks disebutna buku kalawan judul buku barudak di handap urang:

Pikeun manggihan sakabeh buku jeung kecap "The" dina judulna anjeun bakal nganggo rumpaka handap:

grep The buku

Hasil di handap bakal balik:

Dina unggal hal, kecap "The" bakal disorot.

Catet yén pilarian nyaeta hal sénsitip kitu lamun salah sahiji judul tadi "teh" tinimbang "The" mangka bakal moal geus balik.

Pikeun malire hal Anjeun bisa nambahkeun switch handap:

grep buku --ignore-hal

Anjeun oge tiasa make switch -i saperti kieu:

grep -i buku

02 of 09

Milarian Pikeun A string Dina Hiji File Maké Wildcards

Paréntah grep pisan kuat. Anjeun tiasa make rupa-rupa téhnik cocog pola pikeun nyaring hasilna.

Dina conto ieu, kuring baris némbongkeun Anjeun cara milari hiji senar di file nganggo wildcards .

Ngabayangkeun anjeun gaduh file disebut tempat jeung handap ngaran tempat Skotlandia:

Aberdeen

aberystwyth

aberlour

inverurie

Inverness

Newburgh

kijang anyar

galloway anyar

Glasgow

Edinburgh

Lamun hayang manggihan sakabeh tempat ku inver dina ngaran nganggo rumpaka di handap ieu:

grep inver * tempat

The bintang (*) bonus nangtung pikeun 0 atawa loba. Kituna lamun boga lelewek inver atanapi lelewek Inverness lajeng duanana bakal jadi balik.

bonus sejen bisa ngagunakeun anu periode (.). Anjeun tiasa make ieu cocog surat tunggal.

grep inver.r tempat

Paréntah luhur bakal manggihan tempat anu disebut inverurie na inverary tapi moal bakal manggihan invereerie lantaran aya ukur tiasa salah bonus antara dua r urang salaku dilambangkeun ku jaman tunggal.

Mangsa bonus dipake tapi bisa ngabalukarkeun masalah lamun boga salah salaku bagian tina téks anjeun néangan.

Contona kasampak di daptar ieu ngaran domain

Pikeun manggihan sagala about.coms Anjeun ngan bisa neangan ngagunakeun rumpaka di handap ieu:

grep * ngeunaan domainnames *

Paréntah luhur bakal tumiba ka handap mun daftar ngandung nami di handap di dinya:

Anjeun bisa, ku kituna, coba éta rumpaka di handap ieu:

grep * about.com domainnames

Ieu bakal dianggo ok iwal aya domain kalawan nami di handap:

aboutycom.com

Bener milarian about.com istilah Anjeun bakal kedah kabur titik éta saperti kieu:

grep * ngeunaan \ .com domainnames

The bonus final pikeun némbongkeun Anjeun teh tanda tanya nu nangtung pikeun karakter enol atawa salah.

Salaku conto:

grep? placenames BER

Paréntah luhur bakal balik Aberdeen, aberystwyth atawa malah berwick.

03 of 09

Pilarian Pikeun Senar di awal jeung ahir Jalur Maké grep

The karat (^) jeung dollar ($) simbol ngidinan Anjeun pikeun milari pola di awal jeung akhir tina garis.

Ngabayangkeun anjeun gaduh file disebut football jeung ngaran tim handap:

Lamun hayang manggihan sakabeh tim anu dimimitian ku Manchester anjeun bakal nganggo rumpaka handap:

grep ^ Manchester tim

Paréntah luhur bakal balik Manchester Kota tur Manchester United tapi teu FC Serikat Of Manchester.

Alternatipna anjeun tiasa manggihan sakabeh tim tungtung Serikat ngagunakeun rumpaka di handap ieu:

grep Serikat $ tim

Paréntah luhur bakal balik Manchester United na Newcastle Serikat tapi teu FC Serikat Of Manchester.

04 of 09

Cacah Jumlah Kecap nu cocog Maké grep

Mun anjeun teu hoyong balik ka garis nu sabenerna nu cocog pola hiji maké grep tapi anjeun ngan hayang nyaho sabaraha aya anjeun tiasa nganggo rumpaka di handap ieu:

grep -c inputfile pola

Lamun pola ieu loyog dua kali teras jumlah 2 bakal dipulangkeun.

05 of 09

Pananjung Sadaya The Sarat Éta Ulah Cocogkeun maké grep

Ngabayangkeun anjeun gaduh daptar ngaran tempat jeung nagara didaptarkeun saperti kieu:

Anjeun bisa geus noticed nu colwyn bay boga nagara pakait sareng eta.

Pikeun neangan sagala tempat kalawan nagara anjeun bisa nganggo rumpaka di handap ieu:

grep tempat darat $

Hasilna mulih bakal jadi sakabeh tempat iwal colwyn bay.

Ieu écés ukur lumaku pikeun tempat nu mungkas di darat (boro ilmiah).

Anjeun tiasa invert pilih ngagunakeun rumpaka di handap ieu:

grep -V darat $ tempat

Ieu bakal manggihan sakabeh tempat nu teu ditungtungan ku taneuh.

06 of 09

Kumaha Ka Teangan Galur kosong Dina Payil Maké grep

Ngabayangkeun anjeun gaduh hiji file input nu dipaké ku aplikasi pihak katilu mana eureun maca file lamun manggih hiji garis kosong saperti kieu:

Lamun aplikasi nu meunang jalur sanggeus Liverpool éta bakal eureun maca hartina colwyn bay ieu lasut sagemblengna.

Anjeun tiasa make grep neangan garis kosong jeung rumpaka di handap ieu:

grep ^ $ tempat

Hanjakal ieu teu sabagian dipake sabab ngan mulih ka garis kosong.

Anjeun bisa tangtu meunangkeun count tina Jumlah garis kosong salaku dipariksa ningali lamun file nyaeta valid saperti kieu:

grep -c ^ $ tempat

kumaha oge bakal langkung mangpaat apal kana angka garis nu boga garis kosong ku kituna anjeun bisa ngaganti aranjeunna. Anjeun tiasa ngalakukeun éta kalayan paréntah di handap:

grep -n ^ $ tempat

07 of 09

Kumaha Ka Milarian Pikeun Senar Of Uppercase Atawa aksara leutik Karakter Maké grep

Ngagunakeun grep anjeun bisa nangtukeun mana garis dina file anu boga karakter uppercase ngagunakeun rumpaka di handap ieu:

grep '[AZ]' Ngaran koropak

Kurung pasagi [] hayu anjeun nangtukeun rentang ti karakter. Dina conto di luhur eta cocog sagala karakter nu antara A jeung Z.

Kituna mun cocog karakter aksara leutik Anjeun tiasa make rumpaka di handap ieu:

grep '[AZ]' Ngaran koropak

Mun rék cocog hijina hurup teu numerics atanapi simbol lianna Anjeun tiasa make rumpaka di handap ieu:

grep '[a-za-Z]' Ngaran koropak

Anjeun tiasa ngalakukeun sami kalawan nomer saperti kieu:

grep '[0-9]' Ngaran koropak

08 of 09

Pilari Pikeun Repeating Pola Maké grep

Anjeun tiasa make kurung Curly {} néang pola repeating.

Ngabayangkeun anjeun gaduh file kalawan nomer telepon saperti kieu:

Anjeun terang ka bagian mimiti jumlahna perlu jadi tilu digit jeung rék manggihan jalur anu teu cocog pola ieu.

Ti conto saméméhna anjeun terang yen [0-9] mulih sadayana angka dina file anu.

Dina conto ieu kami hoyong garis nu mimitian ku tilu nomer dituturkeun ku hyphen (-). Anjeun tiasa ngalakukeun nu ku rumpaka di handap ieu:

grep "^ [0-9] [0-9] [0-9] -" angka

Salaku urang terang tina conto saméméhna dina karat (^) ngandung harti yén jalur kudu dimimitian ku pola handap.

The [0-9] baris milari angka sagala antara 0 jeung 9. Salaku ieu kaasup tilu kali eta cocog 3 angka. Tungtungna aya nu hyphen mun denote yén hyphen a kudu sukses tilu angka.

Ku ngagunakeun kurung Curly anjeun tiasa ngadamel pilarian leuwih leutik saperti kieu:

grep "^ [0-9] \ {3 \} -" angka

slash The escapes nu {bracket meh jalan salaku bagian tina éksprési nu biasa tapi panggih naon ieu nyebutkeun nyaéta [0-9] {3} anu hartosna angka sagala antara 0 jeung 9 tilu kali.

Kurung Curly ogé bisa dipaké saperti kieu:

{5,10}

{5,}

The {5,10} hartina karakter nu keur searched pikeun kudu terus-terusan sahenteuna 5 kali tapi henteu leuwih ti 10 sedengkeun nu {5,} hartina karakter teh kudu terus-terusan sahenteuna 5 kali tapi tiasa langkung ti eta.

09 of 09

Ngagunakeun The Kaluaran Ti Paréntah lianna maké grep

Kituna tebih kami geus melong cocog pola dina file individu tapi grep tiasa nganggo kaluaran ti Paréntah lianna salaku input pikeun cocog pola.

Hiji conto agung ieu maké paréntah ps nu mangrupa daptar prosés aktif.

Contona ngajalankeun paréntah di handap:

ps -ef

Sakabéh prosés ngajalankeun on sistem Anjeun bakal dipintonkeun.

Anjeun tiasa make grep néang prosés jalan tinangtu saperti kieu:

ps -ef | grep Firefox

singgetan

Paréntah grep mangrupakeun paréntah dasar Linux Ubuntu jeung éta salah yen sia ogé diajar sakumaha bakal nyieun hirup anjeun teuing gampang nalika néangan payil jeung prosés nalika ngagunakeun terminal.