Eilių ar raštų ieškokite paprastame tekste iš terminalo

apie stygų ar raštų paiešką

Kitame straipsnyje mes pamatysime kai kuriuos komandinės eilutės įrankiai, naudojami teksto failuose rasti tinkančias eilutes ar šablonus. Šie įrankiai paprastai naudojami kartu su taisyklingomis išraiškomis, sutrumpintai kaip REGEX, kurios yra unikalios eilutės, apibūdinančios paieškos modelį.

Reguliarūs posakiai yra modeliai, naudojami norint rasti tam tikrą simbolių derinį teksto eilutėje. Reguliarūs posakiai yra labai lankstus būdas ieškoti ar atpažinti teksto eilutes. Nors šiose eilutėse nematysime taisyklingų posakių, naudosime šablonus ar eilutes.

Ieškokite eilučių ar raštų iš terminalo

Grep komanda

Grep yra akronimas Visuotinis reguliariosios išraiškos spausdinimas. Tai galingas komandinės eilutės įrankis, naudingas ieškant faile konkrečios eilutės ar šablono. Su grep galėsime naudotis įvairiausiomis funkcijomis, tokiomis, kurias kolega mums prieš kurį laiką paaiškino šiame tinklaraštyje.

Grep komandos naudojimo sintaksė yra gana paprasta:

grep PATRON [RUTA AL ARCHIVO]

Pvz., Norint ieškoti eilutės 'ubuntu'faile, kuriam šiame pavyzdyje paskambinsime text.txt, neatsižvelgdami į didžiųjų ir mažųjų raidžių skirtumus, terminale (Ctrl + Alt + T) turėsime vykdyti tik komandą:

grep -i tekstas

grep -i Ubuntu texto.txt

Komanda sed

Troškulys yra trumpas Srauto redaktorius. Tai yra dar viena naudinga priemonė terminalui, su kuria galime manipuliuoti failo tekstu. „Sed“ ieško, filtruoja ir pakeičia eilutes nurodytame faile.

Komanda sed pagal nutylėjimą spausdina išvestį IŠJUNGIMAS (Standartinė išvestis). Tai reiškia, kad vykdymo rezultatas spausdinamas į terminalą, o ne išsaugomas faile.

„Sed“ komandą galima naudoti taip:

sed -OPCIONES COMANDO [RUTA AL ARCHIVO]

Pvz., Norint pakeisti visus „Linux„tekste“„GnuLinux“", komanda turėtų būti tokia:

Komanda sed

sed 's/Linux/GnuLinux/g' texto.txt

Jei tai, ko mes ieškome, yra nukreipti išvestį į failą, o ne spausdinti į terminalą, peradresavimo ženklą naudosime taip:

sed 's/Linux/GnuLinux/g' texto.txt > salida.txt

Komandos išvestis išsaugoma faile output.txt užuot atspausdintas ekrane.

sed komandos išvestis

Norėdami pamatyti daugiau parinkčių, galite skaitykite vyro puslapius:

žmogus ištroškęs

man sed

ack

„Ack“ yra greitas komandinės eilutės įrankis, parašytas „Perl“. Tai laikoma draugišku grep programos pakaitalu, kuris taip pat generuoja rezultatus vizualiai patraukliai.

į įdiekite ack savo sistemoje turėsime vykdyti terminale (Ctrl + Alt + T):

įdiekite ack

sudo apt install ack

Įsakymas Ack ieško faile ar kataloge eilučių, kuriose yra paieškos kriterijų atitiktis. Tada paryškinkite atitinkamą eilutę. Šis įrankis turi galimybę atskirti failus pagal jų plėtinius.

„Ack“ komandos sintaksė būtų maždaug tokia

ack [OPCIONES] PATRÓN [RUTA AL ARCHIVO]

Pavyzdžiui, norint ieškoti termino Linux faile turėtume įvykdyti:

komanda ack paieška

ack Linux texto.txt

Paieškos įrankis yra gana protingas ir jei vartotojas nepateikia jokių failų ar katalogų, jis ieško paieškos modelio dabartiniame kataloge ir pakatalogiuose.

Šiame pavyzdyje failas ar katalogas nepateikti. „Ack“ automatiškai aptinka kataloge turimą failą ir ieško atitinkamo modelio:

ack paieška be failo

ack Linux

Ripgrepas

Ripgrepas yra kelių platformų įrankis, skirtas ieškoti taisyklingos išraiškos šablonų. Tai greitesnė nei visi pirmiau minėti paieškos įrankiai, ir jis rekursyviai ieško katalogų, kad atitiktų modelius. Tai taip pat leidžia jums ieškoti konkrečių failų tipų. Pagal numatytuosius nustatymus „ripgrep“ praleis dvejetainius failus ir paslėptus failus / katalogus.

į įdiekite ripgrep sistemoje tiesiog paleiskite šią komandą terminale (Ctrl + Alt + T):

ripgrep diegimas

sudo apt install ripgrep

Ripgrep naudojimo sintaksė yra gana paprasta:

rg [OPCIONES] PATRÓN [RUTA AL ARCHIVO]

Jei norėtume ieškoti grandinės “Linux'failuose, esančiuose dabartiniame kataloge, turėsime vykdyti tik komandą:

vyras rg linux

rg Linux

Norėdami pamatyti daugiau parinkčių, vartotojai gali naudoti vyro puslapiai:

vyras rg

man rg

Sidabro ieškotojas

į įdiekite šį įrankį„Ubuntu“ turėsime atidaryti tik terminalą („Ctrl“ + „Alt“ + T) ir parašyti komandą:

„Silversearcher-ag“ instaliacija

sudo apt install silversearcher-ag

„Silver Searcher“ yra kelių platformų atvirojo kodo paieškos įrankis, panašus į „ack“, tačiau akcentuojantis greitį. Tai leidžia lengvai rasti konkrečią eilutę failuose per trumpiausią įmanomą laiką. Naudojama sintaksė būtų tokia:

ag OPCIONES PATRÓN_DE_BÚSQUEDA /ruta/al/archivo

Pvz., Norint ieškotiLinux„Faile text.txt, turėtume parašyti terminale („Ctrl“ + „Alt“ + T):

ieškoti pas sidabrą

ag Linux texto.txt

Norėdami pamatyti daugiau galimybių, galite kreiptis į vyro puslapiai:

vyras sidabrinis tyrinėtojas

man ag

Tai tik keletas dažniausiai naudojamų komandinės eilutės įrankių ieškant, filtruojant ir manipuliuojant „Linux“ tekstu.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.