Süntaks
Grep [muster] [failinimi]
Pärast grepi kasutamist tuleb muster. Muster viitab viisile, kuidas soovime seda kasutada lisaruumi eemaldamiseks andmetest. Pärast mustrit kirjeldatakse failinime, mille kaudu muster teostatakse.
Eelduseks
Grepi kasulikkuse hõlpsaks mõistmiseks peame oma süsteemi installima Ubuntu. Andke kasutaja üksikasjad, pakkudes kasutajanime ja parooli, et teil oleks Linuxi rakendustele juurdepääsu õigused. Pärast sisselogimist avage rakendus ja otsige terminal või rakendage kiirklahvi ctrl + alt + T.
Kasutades märksõna [: blank:]
Oletame, et meil on fail nimega bfile, millel on tekstilaiend. Faili saate luua kas tekstiredaktoris või käsureal terminalis. Terminali faili loomiseks, sealhulgas järgmised käsud.
$ Echo “faili sisestatav tekst”> failinimi.txtFaili pole vaja luua, kui see on juba olemas. Kuvage see lihtsalt lisatud käsuga:
$ kaja failinimi.txtNendesse failidesse kirjutatud tekst sisaldab nende vahel tühikuid, nagu on näha alloleval joonisel.
Neid tühje ridu saab tühja käsuga eemaldada, et ignoreerida sõnade või stringide vahelisi tühje tühikuid.
$ egrep '^ [[: blank]] * [^ [: blank:] #]' bfail.txt
Pärast päringu rakendamist eemaldatakse ridade vahel tühjad ruumid ja väljund ei sisalda enam lisaruumi. Esimene sõna on esile tõstetud, eemaldades tühikud rea viimase sõna ja järgmise rea esimeste sõnade vahel. Tingimusi võime rakendada ka samale käskule grep, lisades selle tühja funktsiooni, et väljundis tühistada kasutu ruum.
Kasutades [: space:]
Siin on selgitatud veel ühte ruumi ignoreerimise näidet.
Ilma faililaiendit mainimata kuvame kõigepealt olemasoleva faili käsu abil.
kassifail $ 20
Vaatame, kuidas lisaruumi eemaldatakse, kasutades märksõna [: space:] kõrval käsku grep. Grepi suvand -v aitab printida ridu, millel puuduvad tühjad read ja lisavahe, mis sisaldub ka lõiguvormis.
$ grep -v '^ [[; tühik:]] * $' fail20Näete, et lisaread eemaldatakse ja väljund on järjestatud rea kaupa. Nii on grep -v metoodikast nõutava eesmärgi saavutamisel nii palju abi.
Faililaiendite mainimine piirab grep-funktsionaalsust ainult teatud faililaienditel, s.t.e., .tekst või .mp3. Kui teostame tekstifaili joondamist, võtame faili.txt näidisfailina. Esiteks kuvame selles oleva teksti, kasutades funktsiooni $ cat. Väljund on järgmine:
Käsku rakendades on meie väljundfail saadud. Siin näeme andmeid järjestikuselt kirjutatud ridade vahel.
$ grep -v '^ [[: tühik:]] * $' fail.txt
Lisaks pikkadele käskudele võime ka Linuxis ja Unixis kasutada lühikesi kirjutatud käske, et grep toetaks selles lühikesi märke.
$ grep '\ s' failinimi.txtOleme näinud, kuidas väljund saadakse sisendist käskude rakendamisega. Siit saame teada, kuidas sisendit hoitakse väljundist tagasi.
$ grep '\ S' failinimi.txt> tmp.txt && mv tmp.txt failinimi.txtSiin kasutame ajutist tekstifaili, mille tekstilaiend on tmp.
Kasutades ^ #
Täpselt nagu teised kirjeldatud näited, rakendame käsku tekstifailil käsu cat abil. Teksti saame kuvada ka kaja käsu abil.
$ kaja failinimi.txtTekstifail sisaldab 4 rida, nende vahel on ruumi. Need tühikud saab konkreetse käsu abil hõlpsasti eemaldada.
$ grep -Ev "^ # | ^ $" failinimi
Regulaarsed laiendatud toimingud lubab -E, mis võimaldab kõiki regulaaravaldisi, eriti toru. Toru kasutatakse mis tahes mustri valikulise tingimusena “või”.”^ #”. See näitab tekstiridade sobivust failis, mis algab märgiga #. „^ $” Sobib kõigi tekstis olevate tühikute või tühjade ridadega.
Väljund näitab täiendava ruumi täielikku eemaldamist andmefailis olevate ridade vahel. Selles näites oleme näinud, et käsus tuleb esikohale “^ #”, mis tähendab, et kõigepealt sobitatakse tekst. "^ $" Tuleb pärast | operaator, seega sobitatakse vaba ruum hiljem.
Kasutades funktsiooni ^ $
Täpselt nagu ülalnimetatud näites, saame ka samad tulemused, kuna käsk on peaaegu sama. Kuid muster on kirjutatud vastupidiselt. Fail22.txt on fail, mida me kasutame tühikute eemaldamisel.
$ grep -v '^ $ | ^ #' failinimi
Kasutatakse sama metoodikat, välja arvatud prioriteediga töötamine. Selle käsu järgi sobitatakse kõigepealt vabad ruumid ja seejärel tekstifailid. Väljund annab ridade järjestuse, eemaldades nendes lisavahed.
Muud lihtsad käsud
- Grep '^…' failinimi.
- Grep '.' Faili nimi
Need mõlemad on nii lihtsad ja aitavad tekstiridade lünki kõrvaldada.
Järeldus
Failides kasutute tühimike eemaldamine regulaaravaldiste abil on andmete sujuva järjestuse saavutamiseks ja järjepidevuse säilitamiseks üsna lihtne lähenemine. Näiteid selgitatakse üksikasjalikult, et teie teavet selle teema kohta paremaks muuta.