Meklējiet virknes vai rakstus vienkāršā tekstā no termināla

par virkņu vai rakstu meklēšanu

Nākamajā rakstā mēs redzēsim dažus komandrindas rīki, ko izmanto, lai atrastu atbilstošas ​​virknes vai modeļus teksta failos. Šie rīki parasti tiek izmantoti kopā ar regulārām izteiksmēm, saīsināti kā REGEX, kas ir unikālas virknes, lai aprakstītu meklēšanas modeli.

Regulārās izteiksmes ir modeļi, ko izmanto, lai teksta virknē atrastu noteiktu rakstzīmju kombināciju. Regulārās izteiksmes nodrošina ļoti elastīgu veidu, kā meklēt vai atpazīt teksta virknes. Lai gan nākamajās rindās mēs neredzēsim regulārus izteicienus, mēs izmantosim modeļus vai virknes.

Meklējiet virknes vai rakstus no termināla

Grep komanda

Greps ir saīsinājums Globālās regulārās izteiksmes druka. Tas ir spēcīgs komandrindas rīks, kas ir noderīgs, meklējot failā noteiktu virkni vai modeli. Ar grep mēs varēsim izmantot plašu funkciju klāstu, piemēram, tās, kuras kolēģis pirms kāda laika mums paskaidroja šajā emuārā.

Grep komandas sintakse ir diezgan vienkārša:

grep PATRON [RUTA AL ARCHIVO]

Piemēram, lai meklētu virkni 'Ubuntu'failā, uz kuru šajā piemērā mēs piezvanīsim text.txt, neņemot vērā atšķirību starp lielajiem un mazajiem burtiem, terminālā (Ctrl + Alt + T) mums būs jāizpilda tikai komanda:

grep -i teksts

grep -i Ubuntu texto.txt

Komanda sed

Slāpes ir īsas Straumes redaktors. Tas ir vēl viens noderīgs rīks terminālim, ar kuru mēs varam manipulēt ar tekstu failā. Sed meklē, filtrē un aizstāj virknes dotajā failā.

Komanda sed pēc noklusējuma izdrukā izvadi STDOUT (Standarta izeja). Tas nozīmē, ka izpildes rezultāts tiek izdrukāts terminālā, nevis tiek saglabāts failā.

Sed komandu var izmantot šādi:

sed -OPCIONES COMANDO [RUTA AL ARCHIVO]

Piemēram, lai aizstātu visus “Linux"tekstā ar"Linux', izmantojamā komanda būtu šāda:

Komanda sed

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

Ja tas, ko mēs meklējam, ir novirzīt izvadi uz failu, nevis drukāt to uz termināli, mēs izmantosim novirzīšanas zīmi šādi:

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

Komandas izeja tiek saglabāta failā output.txt tā vietā, lai tiktu drukāts uz ekrāna.

sed komandas izvade

Lai redzētu vairāk iespēju, varat konsultējieties ar cilvēka lapām:

cilvēks izslāpis

man sed

Ak

Ack ir ātrs komandrindas rīks, kas rakstīts Perl valodā. Tas tiek uzskatīts par draudzīgu grep lietderības aizstājēju, kas arī rada rezultātus vizuāli pievilcīgā veidā.

līdz instalēt ack mūsu sistēmā mums būs jāizpilda terminālā (Ctrl + Alt + T):

instalēt ack

sudo apt install ack

Komanda Ack meklē failā vai direktorijā rindas, kurās ir meklēšanas kritēriju atbilstība. Pēc tam iezīmējiet atbilstošo virkni. Šis rīks spēj atšķirt failus, pamatojoties uz to paplašinājumiem.

Ack komandas sintakse būtu apmēram šāda

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

Piemēram, lai meklētu terminu Linux failā mums būtu jāizpilda:

komandu ack meklēšana

ack Linux texto.txt

Meklēšanas rīks ir diezgan gudrs un ja lietotājs nepiegādā failus vai direktorijus, tas meklēšanas modeli meklē pašreizējā direktorijā un apakšdirektorijos.

Šajā piemērā nav norādīts fails vai direktorijs. Ack automātiski atrod direktorijā pieejamo failu un meklē atbilstošo modeli:

ack meklēšana bez faila

ack Linux

Ripgreps

Ripgreps ir starpplatformu lietderība regulāru izteiksmes modeļu meklēšanai. Tas ir ātrāks nekā visi iepriekš minētie meklēšanas rīki, un tas katalogos rekursīvi meklē atbilstošos modeļus. Tas ļauj arī meklēt konkrētus failu tipus. Pēc noklusējuma ripgrep izlaidīs bināros failus un slēptos failus / direktorijus.

līdz instalēt ripgrep sistēmā viss, kas jums jādara, ir palaist šādu komandu terminālā (Ctrl + Alt + T):

ripgrep instalēšana

sudo apt install ripgrep

Ripgrep izmantošanas sintakse ir diezgan vienkārša:

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

Ja mēs gribētu meklēt ķēdi 'Linux'failos, kas atrodas pašreizējā direktorijā, mums būs jāizpilda tikai komanda:

cilvēks rg linux

rg Linux

Lai redzētu vairāk iespēju, lietotāji var izmantot man lapas:

cilvēks rg

man rg

Sudraba meklētājs

līdz instalējiet šo rīkuUbuntu mums būs jāatver tikai terminālis (Ctrl + Alt + T) un jāuzraksta komanda:

silversearcher-ag instalācija

sudo apt install silversearcher-ag

Silver Searcher ir starpplatformu, atvērtā koda meklēšanas rīks, kas līdzīgs ack, bet uzsvaru liek uz ātrumu. Tas ļauj viegli atrast noteiktu virkni failos pēc iespējas īsākā laikā. Izmantojamā sintakse būtu šāda:

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

Piemēram, lai meklētuLinux"failā text.txt, mums būtu jāraksta terminālā (Ctrl + Alt + T):

meklēt ar sudraba meklētāju

ag Linux texto.txt

Lai redzētu vairāk iespēju, mēs varam iepazīties ar cilvēka lapas:

cilvēks sudrabpētnieks

man ag

Šie ir tikai daži no visbiežāk izmantotajiem komandrindas rīkiem, lai meklētu, filtrētu un manipulētu ar tekstu Linux.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.