Ukaz grep omogoča dostop do pripomočka grep, zmogljivega orodja za obdelavo datotek, ki se uporablja za iskanje vzorcev v besedilnih datotekah. Ima veliko primerov praktične uporabe in je zagotovo eden najpogosteje uporabljenih ukazov Linuxa. Ta priročnik ponazarja nekaj preprostih, a uporabnih ukazov za grep za Linux, ki se uporabljajo v resničnem svetu.
Primer datoteke za predstavitev
Ustvarili smo referenčno datoteko za lažje razumevanje grepa. Kopijo te datoteke lahko ustvarite tako, da v svojem terminalu izdate naslednji ukaz lupine.
pridobivanje podatkov s starega trdega diska
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. Poiščite besedilo v datotekah
Če želite poiskati besedilni vzorec v datoteki, preprosto zaženite grep, ki mu sledi ime vzorca. Določite tudi ime datoteke, ki vsebuje besedilo.
grep 'email' test-file
Ta ukaz bo prikazal vrstico v naši datoteki testna datoteka ki vsebuje besedo E-naslov . Lahko tudi iščete isto besedilo v več datotekah s pomočjo grep.
grep 'example' /usr/share/dict/american-english /usr/share/dict/british-english
Zgornji ukaz prikazuje vse primerke besede primer v ameriško-angleški in Britanska angleščina slovarske datoteke.
2. Poiščite besede z natančnim ujemanjem
Ukaz Linux grep, prikazan v prejšnjem primeru, vsebuje tudi vrstice z delnimi ujemanji. Uporabite spodnji ukaz, če potrebujete le natančne besede.
grep -w 'string' test-file
The -v ali --word-regexp možnost grep omeji izhod samo na natančna ujemanja. Grep je sestavljen iz nekaterih dodatnih zastavic, ki jih je mogoče uporabiti tudi s privzetim ukazom.
Povezano: Kako je Grep dobil ime? Zgodovina za Grepovim ustvarjanjem
3. Prezri razlikovanje med velikimi in malimi črkami
Grep privzeto išče vzorce na način, ki razlikuje med velikimi in malimi črkami. Vendar pa boste morda želeli to izklopiti, če vnaprej ne veste, v kakšnem primeru je vzorec.
grep -i 'this' test-file
Uporabi -jaz ali --ignore-case možnost za izklop občutljivosti velikih in malih črk.
4. Preštejte število vzorcev
The -c zastava pomeni šteti . Prikazuje število ujemanj, ki so bile najdene za določen vzorec. Skrbniki lahko to uporabijo za pridobivanje določenih informacij o sistemu.
Lahko cevi ukaz ps z grep za štetje procesov, ki pripadajo trenutnemu uporabniku.
ps -ef | grep -c $USER
Naslednji ukaz prikazuje število MP3 datoteke v imeniku.
ls ~/Music | grep -c .mp3
5. Prikažite številke vrstic, ki vsebujejo ujemanja
Morda boste želeli poiskati številke vrstic, ki vsebujejo določeno ujemanje. Uporabi -n ali -vrstica-številka možnost grep za to.
cat /etc/passwd | grep -n rubaiat
Ta možnost je še posebej uporabna za odpravljanje napak izvornih kod in odpravljanje težav z datotekami dnevnika. Za prikaz vseh številk vrstic v ~/.vimrc ki se uporabljajo za konfiguracijo urejevalnika besedil Vim:
grep -n 'set' ~/.vimrc
6. Poiščite imena datotek z razširitvami
Če želite dobiti seznam vseh MP3 datoteke, ki so prisotne v ~/Glasba imenik:
ls ~/Music/ | grep '.mp3'
Lahko zamenjate .mp3 z drugimi razširitvami za iskanje določenih datotek. Naslednji ukaz navaja vse datoteke php datoteke v trenutnem delovnem imeniku.
zunanji trdi disk zaznan, vendar se ne odpre
ls | grep '.php'
7. Poiščite vzorce v stisnjenih datotekah
Linux grep ukaz lahko najde tudi vzorce znotraj stisnjenih datotek. Boste morali uporabiti zgrep ukaz za to. Najprej ustvarite naš stisnjen arhiv testna datoteka z vnosom:
gzip test-file
Zdaj lahko v nastalem arhivu iščete besedilo ali druge vzorce.
zgrep email test-file.gz
8. Poiščite e -poštne naslove
Skrbniki lahko z ukazom grep za Linux navedejo tudi e -poštne naslove iz besedilnih datotek. Naslednji primer to počne z iskanjem vzorca regularnega izraza.
grep '^[a-zA-Z0-9]+@[a-zA-Z0-9]+.[a-z]{2,}' test-file
Za opravljanje podobnih del lahko najdete redne izraze ali pa jih ustvarite sami, če veste, kako delujejo.
9. Poiščite telefonske številke s pomočjo Grepa
Za filtriranje telefonskih številk iz besedilne datoteke lahko uporabite regularne izraze grep. Upoštevajte, da bi morali vzorec prilagoditi vrsti telefonskih številk, ki jih potrebujete.
grep '(([0-9]{3})|[0-9]{3})[ -]?[0-9]{3}[ -]?[0-9]{4}' test-file
Omenjeni ukaz filtrira desetmestne ameriške telefonske številke.
10. Poiščite URL -je iz izvornih datotek
Zmožnost grepa lahko izkoristimo za naštevanje URL -jev v besedilnih datotekah. Spodnji ukaz natisne vse URL-je, ki so prisotni v datoteki testna datoteka .
grep -E '^(http|https|ftp):[/]{2}([a-zA-Z0-9-.]+.[a-zA-Z]{2,4})' test-file
Ponovno uporabljamo -IN možnost razširjenih regularnih izrazov. Uporabite lahko tudi egrep ukaz, da se temu ne doda.
egrep '^(http|https|ftp):[/]{2}([a-zA-Z0-9-.]+.[a-zA-Z]{2,4})' test-file
Obvladovanje ukaza Grep Linux
Predstavili smo nekaj uporabnih primerov ukaza grep za Linux za reševanje težav v resničnem svetu. Čeprav ti primeri ponazarjajo moč grepa za obdelavo besedila, boste morali obvladati regularne izraze, če želite biti super produktivni pri grepu.
Včasih se uporabniki Linuxa srečajo v določenih situacijah, ko se ne spomnijo različnih možnosti, povezanih z ukazom. Upajmo, da vam operacijski sistem Linux ponuja načine za pomoč v ukazni vrstici za skoraj vse sistemske pripomočke.
Deliti Deliti Cvrkutati E-naslov 7 načinov za pomoč pri ukazni vrstici za LinuxVsi bistveni ukazi za spoznavanje ukazov Linuxa iz ukazne vrstice
Preberite Naprej Sorodne teme- Linux
- Linux
- Ukazi Linuxa
Rubaiat je diplomant CS z močno strastjo do odprtokodnosti. Poleg tega, da je veteran Unixa, se ukvarja tudi z varnostjo omrežij, kriptografijo in funkcionalnim programiranjem. Je navdušen zbiratelj rabljenih knjig in nenehno občuduje klasični rock.
Več od Rubaiat HossainNaročite se na naše novice
Pridružite se našemu glasilu za tehnične nasvete, ocene, brezplačne e -knjige in ekskluzivne ponudbe!
kako vklopiti letalski način na macuKliknite tukaj, da se naročite