Kā atrast tekstu failos Linux

How Find Text Files Linux



Sistēmas administratoram darbs ar teksta failiem ir izplatīta parādība. Varbūt ir jāatrod konkrēta sadaļa no žurnālu failu kaudzēm, lai kaut ko novērstu? Vai arī ātri jāatrod dokuments, kurā ir būtiska informācija?

Linux gadījumā ir daudzas metodes tekstu atrašanai failos. Tas ir iespējams, izmantojot gan iebūvētos rīkus, gan trešo pušu lietotnes. Pārbaudiet, kā atrast tekstus failos Linux.







Teksta atrašana failos

Atkarībā no failu skaita, kuros jāveic meklēšana, teksta meklēšanu var veikt divos veidos: automātiskā vai manuālā. Ja jums ir jāstrādā ar pāris teksta failiem, manuālā meklēšana ir piemērotāka. Tomēr, ja ir simtiem teksta failu, tad visefektīvākā ir automātiskā meklēšana.



Automātiskai meklēšanai mēs izmantosim grep. Grep ir iepriekš instalēts jebkurā Linux distributīvā. Runājot par manuālo meklēšanu, jebkurš mūsdienu teksta redaktors veiks šo darbu.



Atrodiet tekstu failos, izmantojot grep

Linux sistēmā grep ir noklusējuma rīks tekstu meklēšanai. Tās nosaukums ir atvasināts no komandas ed/g/re/p, kas nozīmē regulāras izteiksmes globālu meklēšanu un atbilstošu rindu drukāšanu. Tas ir pieejams jebkurā mūsdienu Linux izplatījumā.





Grep ir komandrindas rīks. Tās komandu struktūra ir šāda.

$satvēriens <iespēja> <regulāra izteiksme> <file_path>

Kā norāda grep nosaukums, meklējamais modelis ir aprakstīts, izmantojot regulāro izteiksmi. Regulārā izteiksme ir īpašs virknes veids, kas apraksta modeli, kas jāatbilst, jāatrod un jāpārvalda. Lai uzzinātu vairāk par grep un regulāro izteiksmi, pārbaudiet izmantojot grep un egrep ar regulāru izteiksmi .



Demonstrēšanas nolūkos paņemiet teksta faila paraugu. Šajā piemērā lejupielādējiet GNU General Public License v3.0 teksta fails .

Pamata meklēšana

Galvenais grep izmantošanas veids ir pamata virknes meklēšana.

Apskatiet šādu grep komandu. Tas teksta failā meklēs vārdu GNU.

$satvēriens 'GNU'lpg-3.0.txt

Lai parādītu rindas numuru, izmantojiet karodziņu -n.

$satvēriens -nGNU gpl-3.0.txt

Lai veiktu meklēšanu bez reģistriem, izmantojot grep, izmantojiet karodziņu -i.

$satvēriens -nignu gpl-3.0.txt

Iespējams, dažās situācijās nevēlaties redzēt meklēšanas atbilstības, bet tikai faila nosaukumu, kurā notika atbilstība. Lai drukātu tikai faila nosaukumu, izmantojiet karodziņu -l. Šeit zvaigznīte apzīmē visu teksta failu izmantošanu pašreizējā direktorijā.

$satvēriens -viņignu*

Mēs varam arī pārsūtīt citu komandu izvadi uz grep.

$kaķislpg-3.0.txt| satvēriens -nGNU

Regulāra izteiksme

Regex piedāvā gudru veidu, kā precizēt meklēšanu. Tam ir savi noteikumi. Tomēr dažādas lietojumprogrammas un programmēšanas valodas regulāro izteiksmi ievieš atšķirīgi. Šeit ir daži piemēri, kurus varat izmantot kopā ar grep.

Lai definētu, ka virkne ir atrodama rindas sākumā, izmantojiet simbolu caret (^).

$satvēriens -n^ GNU gpl-3.0.txt

Lai definētu, ka virkne ir atrodama rindas beigās, izmantojiet dolāra zīmi ($).

$satvēriens -nlīdz $ gpl-3.0.txt

Lai aprakstītu, ka noteiktā raksta vietā var būt jebkura rakstzīme, izmantojiet punktu (.). Piemēram, izteiksme G.U ir derīga, ja starp G un U ir kāda rakstzīme.

$satvēriens -nG.U gpl-3.0.txt

Lai aprakstītu, ka konkrētā raksta vietā var būt rakstzīmju apakškopa, izmantojiet iekavas ([]). Piemēram, izteiksme t [wo] o norāda, ka atbilstība ir derīga tikai diviem un pārāk.

$satvēriens -nt[Kur]o gpl-3.0.txt

Paplašināta regulārā izteiksme

Kā norāda nosaukums, paplašināta regulāra izteiksme var veikt sarežģītākas lietas nekā pamata regulārās izteiksmes. Lai izmantotu paplašināto regulāro izteiksmi ar grep, jāizmanto karodziņš -E.

$satvēriens -dzimis <pagarināts_regulārais> <failu>

Lai meklētu divas dažādas virknes, izmantojiet operatorus VAI (|).

$satvēriens -dzimisGNU|ģenerālis|Licence gpl-3.0.txt

Teksta atrašana failos

Tagad nāk galvenā daļa. Tā vietā, lai manuāli norādītu grep failam veikt meklēšanu, grep to var izdarīt automātiski. Nākamajā komandā grep modeļa meklēšanai izmantos visus pašreizējā direktorijā pieejamos teksta failus.

$satvēriens <regulārā izteiksme> *

Ja vēlaties grep veikt meklēšanu citā direktorijā, jums jānorāda atrašanās vieta.

$satvēriens <regulārā izteiksme> <directory_path>

Ja ir mapes, pēc noklusējuma grep tās neizpēta. Lai norādītu grep meklēt rekursīvi, izmantojiet karodziņu -R.

$satvēriens -nR <regulārā izteiksme> <directory_path>

Grip GUI

Ja vēlaties strādāt ar GUI, bet tomēr vēlaties izbaudīt grep funkcijas, pārbaudiet searchmonkey. Tas ir grep priekšpuses risinājums. Pakete ir pieejama gandrīz visos lielākajos Linux izplatījumos.

Atrodiet tekstu failos, izmantojot nano

GNU Nano ir vienkāršs un spēcīgs teksta redaktors, kas tiek piegādāts kopā ar jebkuru Linux distributīvu. Tam ir iebūvētas funkcijas teksta meklēšanai teksta failā.

Ņemiet vērā, ka šajā metodē jums ir jāatver teksta fails un jāmeklē manuāli. To var izdarīt, ja ir tikai nedaudz teksta failu, ar kuriem strādāt. Ja ir vairāk, tad grep izmantošana ir optimālākā izvēle.

Atveriet teksta failu nano.

$nano <file_path>

Lai meklētu virkņu atbilstību, nospiediet taustiņu kombināciju Ctrl + W. Kad esat ievadījis meklējamo virkni, nospiediet taustiņu Enter.

Atrodiet tekstu failos, izmantojot Vim

Vim ir labi pazīstams un pazīstams teksta redaktors. Tas ir mūsdienu teksta redaktora komandrindas ekvivalents. Vim ir pieejamas daudzas uzlabotas funkcijas, piemēram, spraudņi, makro, automātiskā pabeigšana, filtri utt.

Līdzīgi kā nano, Vim vienlaikus darbojas ar vienu failu. Ja jums ir vairāki teksta faili, tad optimālākais veids ir izmantot grep.

Lai meklētu teksta failā, vispirms atveriet to Vim.

$ES atnācu <file_path>

Ievadiet šādu Vim komandu un nospiediet Enter.

$:/<search_term>

Atrodiet tekstu failos, izmantojot GNOME teksta redaktoru

GNOME teksta redaktors ir teksta redaktors, kas tiek piegādāts kopā ar GNOME darbvirsmu. Tas ir vienkāršots teksta redaktors ar visām pamatfunkcijām, kādas jūs sagaidāt. Tā ir jauka alternatīva komandrindas teksta redaktoriem.

Līdzīgi kā nano un vim, tāda pati piesardzība attiecas arī uz šo metodi. Ja teksta failu skaits ir liels, tad labāk pieturieties pie grep.

Atveriet teksta failu teksta redaktorā. Nospiediet Ctrl + F, lai atvērtu meklēšanas joslu.

Atrodiet tekstu failos, izmantojot VS kodu

Visual Studio Code ir spēcīgs teksta redaktors ar daudzām funkcijām. Tas ir optimizēts programmētājiem, lai tos izmantotu tā, it kā tas būtu pilnvērtīgs IDE. Tas ir pieejams gandrīz visos lielākajos Linux izplatījumos.

Instalējiet Visual Studio Code snap pakotni.

$sudosnapuzstādītkods-klasika

Atveriet teksta failu VS kodā. Lai sāktu meklēšanu, nospiediet Ctrl + F.

Galīgās domas

Ir vairāki veidi, kā meklēt tekstu failos. To ir viegli apgūt. Ir ļoti ieteicams apgūt komandu grep, jo tā piedāvā vislielāko vērtību efektivitātes un lietošanas ērtuma ziņā.

Ja vēlaties GUI, varat izvēlēties daudzus teksta redaktorus. Jebkurš mūsdienīgs teksta redaktors nodrošinās teksta meklēšanas iespēju.

Laimīgu skaitļošanu!