grep

Kā es varu izmantot īpašās rakstzīmes komandā Grep?

Kā es varu izmantot īpašās rakstzīmes komandā Grep?

Grep funkcija ir meklēt tekstu un piemērot tiem nosacījumus. To izmanto meklēšanai vairāk nekā vienā failā. Greps var identificēt tajā esošās teksta rindas un tālāk izlemt piemērot dažādas darbības, kas ietver rekursīvu funkciju, vai apgriezt meklēšanu un parādīt līnijas numuru kā izvadi utt. Īpašās rakstzīmes ir regulārās izteiksmes, kuras komandās izmanto, lai veiktu vairākas darbības, piemēram, #,%, *, &, $, @ utt. Šajā rakstā mēs izmantosim īpašās rakstzīmes. Greps pieļauj argumentus kā virknes, kas norādītas kā regulāra izteiksme. Tam ir arī iespēja aizstāt vārdu vai frāzi tajā. Īpašās rakstzīmes tiek izmantotas ne tikai kā faila nosaukums, bet arī kā failā esošie dati.

Priekšnoteikums

Lai to izpildītu, mums ir nepieciešama operētājsistēma Linux. Lai Linux darbotos, mums iepriekš jābūt instalētai virtuālajai kastei.  Pēc veiksmīgas Linux instalēšanas jūs to konfigurēsit, sniedzot noderīgu informāciju. Nākamais solis ir ievadīt Ubuntu Linux mājas lapu. Norādot lietotājvārdu un paroli, jūs varēsiet piekļūt visām lietojumprogrammām -typectrl + alt + t, lai atvērtu termināli.

“$” Izmantošana

Lai saprastu īpašās rakstzīmes “$” jēdzienu komandā grep, jums ir nepieciešams fails ar nosaukumu file21.txt. “$” Tiek izmantots, lai parādītu visas līnijas, kurām aiz “$” ir rakstzīme, kas ir semikols, t.e., '; $'. Izmantojot kaķu komandu, mēs varam parādīt visu atbilstošo saturu.

$ Kaķu fails.txt

Tagad mēs izmantosim šīs komandas rakstzīmi, lai saprastu, kā tā darbojas. “-E” palīdz attēlot failā precīzu atbilstību.

Fails $ grep -e '; $'.txt

Iepriekš minētajā izvade parāda visas faila rindas ar semikolu “;” beigās. Attiecīgais rezultāts tiek izcelts pie katras līnijas.

Izmantojot “

Šis ir vienkāršs regulārās izteiksmes piemērs. Jebkurā grep paziņojumā tiek izmantotas atsevišķas pēdiņas, ja mēs vēlamies saskaņot jebkuru vārdu faila iekšpusē. Tāpat mēs pieminējām šo piemēru, lai padarītu to precīzu un lietotājam saprotamu.

$ grep -e “Aqsa” fails23.txt

Izejā būs visi teikumi, kas satur vārdu Aqsa, jo komandā meklējām šo vārdu.

Izmantojot []

Kvadrātiekavās tiek pieminēts vārds, kas meklējams starp diviem kvadrātiekavu pāriem. Šīm kvadrātiekavām komandā seko “*”. Turklāt komandā mēs izmantojām -n -I -w -e, lai precīzi iegūtu izvadi ar rindas numuru, neņemot vērā reģistrjutību un iegūtu precīzu atbilstību, kas failā ir notikusi vairāk nekā vienu reizi. Mēs izmantosim faila failu.txt, lai parādītu tajā esošos datus. -E tiek izmantots kā paplašināta regulārā izteiksme ikreiz, kad komandā izmantojam jebkuru rakstzīmi.

$ Kaķu fileg.txt

Tagad mēs izmantosim šādu vaicājumu.

$ grep -noiwe -e '[] * [] *' fails.txt

Kur fileg.txt ir attiecīgais fails. Izejā tiek parādīts vārds “the” visur, kur tas atrodas failā, kā arī rindas numurs. Tiek parādīts tikai vārds, bet ne viss teikums, jo mēs esam izmantojuši -w un -e, lai parādītu tā sastopamību un parādītu precizitāti.

'-' lietošana

'-' tiek izmantots komandā, lai atrastu atbilstību failā. -niw atkal apzīmē to pašu nozīmi, kas aprakstīta iepriekš minētajā piemērā. -m rāda pirmo rindu ar vārdu esošajā failā.

$ grep -niw -m 3 'tehniskais' fails1.txt

Izvade parāda līnijas, kurās ir vārds tehnisks. Tiek parādīts arī rindas numurs, kurā ir vārds “tehniskais”, kas ir 1. un 4. rindā.

Izmantojot “|”

Šis īpašais raksturs tiek izmantots daudzos veidos. Parasti to izmanto kā OR operatoru, lai izdarītu opciju starp diviem dotajiem vārdiem. Grep komandā to izmanto, lai darbotos tā, lai tas iegūtu viena vai abu vārdu ierakstu, atdalot ar “|”. Šeit piemērā parādīti divu vārdu ielāde, kas atrodas visos direktorijas failos.

$ grep -I -E -w 'Aqsa | labs' / mājas / aqsayasin / fails *

Tagad izvadē tiek parādīti abi vārdi, kas atrodas vienā failā vai dažādos failos. Kā mēs jau minējām direktorijā, mēs iegūsim arī failu nosaukumus.

Izmantojot '^ ()'

Šeit '^ ()' darbojas rekursīvi, salīdzinot ar iepriekš minēto piemēru.“^” Parāda tikai vienu no divām dotajām opcijām, t.e., Aksa un labi, ka tas ir pirmais jebkurā failā. Izejā būs tikai Aqsa. Egreps ir paplašināta regulārā izteiksme.

$ egrep -I '^ (aqsa | labs)' / home / aqsayasin / *.txt

Izmantojot ^ $

Tas parāda tukšu / tukšu virkņu atbilstību rindas beigās. Ja tekstā ir kāda nepilnība, to iegūst ar šādu komandu.

$ grep -n '^ $' / home / aqsayasin / *.txt

Visi teksta faili tiks meklēti. Izejā būs failu nosaukumi un arī rindas numurs, kas satur tukšo vietu failā. Komandā mēs izmantojām -n.

Izmantojot []

Šīs divas iekavas parāda, kā darbojas īpašās rakstzīmes. [] satur meklējamo vārdu. Tajā pašā laikā aprakstiet atbilstību failā N reizes. Turpinājuma piemērā mēs izmantojām 2, kas parāda visu divu iespējamo vārda parādīšanos komandā, kas ir “the”.

$ egrep '[the] 2' / home / aqsayasin / file *

Secinājums

Iepriekš pieminētajā rakstā mēs esam apsprieduši dažus pamata piemērus, lai komandā izskaidrotu īpašo rakstzīmju jēdzienu. Mēs izveidojām failu un pēc tam ielādējām tajā esošos datus, izmantojot komandu grep. Es ceru, ka pēc šī raksta izlasīšanas jūs būsiet iepazinušies ar īpašajām rakstzīmēm, kuras esam izmantojuši mūsu rakstā.

Komerciālo spēļu dzinēju atvērtā koda porti
Bezmaksas, atvērtā koda un starpplatformu spēļu dzinēju atpūtu var izmantot, lai spēlētu vecos, kā arī dažus no diezgan nesenajiem spēļu nosaukumiem. ...
Labākās komandrindas spēles Linux
Komandrinda nav tikai lielākais sabiedrotais, lietojot Linux, bet tā var būt arī izklaides avots, jo to var izmantot, lai spēlētu daudzas jautras spēl...
Labākās Linux spēļu gamepad kartēšanas lietotnes
Ja jums patīk spēlēt spēles Linux ar parastu tastatūru, nevis parasto tastatūru un peles ievades sistēmu, jums ir dažas noderīgas lietotnes. Daudzas d...