„Grep“ komanda suteikia prieigą prie „grep“ įrankio - galingo failų apdorojimo įrankio, naudojamo teksto failų šablonams rasti. Jis turi daug praktinio naudojimo atvejų ir tikrai yra viena iš dažniausiai naudojamų „Linux“ komandų. Šis vadovas iliustruoja keletą paprastų, bet naudingų „Linux grep“ komandų, kurios naudojamos realiame pasaulyje.
Demonstracinio failo pavyzdys
Mes sukūrėme nuorodos failą, kuris padeda skaitytojams efektyviau suprasti grep. Galite sukurti šio failo kopiją, savo terminale išleisdami šią apvalkalo komandą.
Ar galiu tiesiogiai žiūrėti instagramą savo kompiuteryje?
cat <> test-file
This is a simple text file that contains
multiple strings as well as some telephone numbers
(555) 555-1234 (567) 666-2345
and email plus web addresses
john@doe.com
https://google.com
ftp://mywebserver.com
END
1. Raskite tekstą failuose
Norėdami ieškoti teksto šablono faile, tiesiog paleiskite „grep“, po to - šablono pavadinimą. Taip pat nurodykite failo, kuriame yra tekstas, pavadinimą.
grep 'email' test-file
Ši komanda parodys eilutę mūsų bandomasis failas kuriame yra žodis paštą . Taip pat galite ieškoti to paties teksto keliuose failuose naudodami grep.
grep 'example' /usr/share/dict/american-english /usr/share/dict/british-english
Aukščiau pateikta komanda rodo visus žodžio atvejus pavyzdys viduje konors amerikiečių-anglų ir britų-anglų žodyno failus.
2. Raskite tikslius atitikimo žodžius
Ankstesniame pavyzdyje pavaizduota „Linux grep“ komanda taip pat išvardija eilutes su dalinėmis atitiktimis. Naudokite žemiau pateiktą komandą, jei jums reikia tik tikslių žodžio įvykių.
grep -w 'string' test-file
The -į arba -word-regexp grep parinktis apriboja išvestį tik tikslioms atitiktims. „Grep“ sudaro keletas papildomų žymių, kurias taip pat galima naudoti su numatytąja komanda.
Susijęs: Kaip Grepas gavo savo vardą? Grepo kūrimo istorija
3. Nepaisykite atvejų skirtumų
Pagal numatytuosius nustatymus „grep“ ieško modelių didžiosiomis ir mažosiomis raidėmis. Tačiau galbūt norėsite tai išjungti, jei iš anksto nežinote, kokiu atveju modelis yra.
grep -i 'this' test-file
Naudoti -i arba -atvejis galimybė išjungti didžiųjų ir mažųjų raidžių jautrumą.
4. Suskaičiuokite modelių skaičių
The -c vėliava reiškia skaičiuoti . Jame rodomas tam tikro modelio atitikčių skaičius. Administratoriai gali tai naudoti norėdami gauti konkrečios informacijos apie sistemą.
Galite vamzdžiu ps komandą su grep skaičiuoti dabartiniam vartotojui priklausančius procesus.
ps -ef | grep -c $USER
Ši komanda rodo skaičių MP3 failus, esančius kataloge.
ls ~/Music | grep -c .mp3
5. Rodyti eilučių numerius, kuriuose yra atitikmenų
Galbūt norėsite rasti eilučių numerius, kuriuose yra tam tikra atitiktis. Naudoti -n arba --eilės numeris grep galimybė tai pasiekti.
cat /etc/passwd | grep -n rubaiat
Ši parinktis ypač naudinga derinant šaltinio kodus ir šalinant žurnalo failus. Norėdami parodyti visus eilučių skaičius ~/.vimrc kurie naudojami konfigūruojant „Vim“ teksto rengyklę:
grep -n 'set' ~/.vimrc
6. Raskite failų pavadinimus naudodami plėtinius
Norėdami gauti visų sąrašą MP3 failus, esančius ~/Muzika katalogas:
ls ~/Music/ | grep '.mp3'
Galite pakeisti .mp3 su bet kuriais kitais plėtiniais, skirtais rasti konkrečius failus. Ši komanda išvardija visus php failus, esančius dabartiniame darbo kataloge.
diskas 100 be jokios priežasties
ls | grep '.php'
7. Raskite suspaustų failų modelius
„Linux grep“ komanda taip pat gali rasti modelių suspaustų failų viduje. Jums reikės naudoti zgrep tačiau komandą tai padaryti. Pirmiausia sukurkite suspaustą mūsų archyvą bandomasis failas įvesdami:
gzip test-file
Dabar gautame archyve galite ieškoti teksto ar kitų modelių.
zgrep email test-file.gz
8. Raskite el. Pašto adresus
Administratoriai taip pat gali išvardyti el. Pašto adresus iš teksto failų naudodami „Linux grep“ komandą. Šis pavyzdys tai daro ieškodamas taisyklingos išraiškos modelio.
grep '^[a-zA-Z0-9]+@[a-zA-Z0-9]+.[a-z]{2,}' test-file
Galite rasti įprastų išraiškų panašiems darbams atlikti arba galite jas sukurti patys, jei žinote, kaip jie veikia.
9. Raskite telefono numerius naudodami „Grep“
Norėdami išfiltruoti telefono numerius iš teksto failo, galite naudoti įprastas grep išraiškas. Atminkite, kad turėsite keisti modelį, kad jis atitiktų jums reikalingų telefono numerių tipą.
grep '(([0-9]{3})|[0-9]{3})[ -]?[0-9]{3}[ -]?[0-9]{4}' test-file
Minėta komanda filtruoja dešimties skaitmenų Amerikos telefono numerius.
10. Raskite URL iš šaltinio failų
Galime panaudoti „grep“ galią, kad išvardytumėte teksto failuose esančius URL. Žemiau pateikta komanda spausdina visus URL, esančius bandomasis failas .
grep -E '^(http|https|ftp):[/]{2}([a-zA-Z0-9-.]+.[a-zA-Z]{2,4})' test-file
Mes vėl naudojame -IR išplėstinių reguliariųjų išraiškų parinktis. Taip pat galite naudoti egrep komandą, kad to nepridėtumėte.
egrep '^(http|https|ftp):[/]{2}([a-zA-Z0-9-.]+.[a-zA-Z]{2,4})' test-file
„Linux Grep“ komandos įsisavinimas
Pateikėme keletą naudingų „Linux grep“ komandos pavyzdžių, skirtų realaus pasaulio problemoms spręsti. Nors šie pavyzdžiai iliustruoja „grep“ galią teksto apdorojimui, turėsite įsisavinti reguliarias išraiškas, jei norite būti itin produktyvūs naudodami „grep“.
Kartais „Linux“ vartotojai patenka į tam tikras situacijas, kai negali prisiminti įvairių su komanda susijusių parinkčių. Tikimės, kad „Linux“ operacinė sistema suteikia jums būdų, kaip gauti komandinės eilutės pagalbą beveik visoms sistemos paslaugoms.
Dalintis Dalintis „Tweet“ Paštu 7 būdai, kaip gauti komandinės eilutės pagalbą „Linux“Visos pagrindinės komandos norint sužinoti apie „Linux“ komandas iš komandinės eilutės
Skaityti toliau Susijusios temos- Linux
- Linux
- „Linux“ komandos
„Rubaiat“ yra CS laipsnis, turintis didelę aistrą atvirojo kodo. Be to, kad yra „Unix“ veteranas, jis taip pat užsiima tinklo saugumu, kriptografija ir funkciniu programavimu. Jis yra aistringas naudotų knygų kolekcionierius ir nesibaigiantis žavėjimasis klasikiniu roku.
Daugiau iš Rubaiat HossainPrenumeruokite mūsų naujienlaiškį
Prisijunkite prie mūsų naujienlaiškio, kad gautumėte techninių patarimų, apžvalgų, nemokamų el. Knygų ir išskirtinių pasiūlymų!
kaip įdiegti „kali linux“ „vmware“Norėdami užsiprenumeruoti, spustelėkite čia