V naslednjem članku bomo videli nekaj orodja ukazne vrstice, ki se uporabljajo za iskanje ustreznih nizov ali vzorcev v besedilnih datotekah. Ta orodja se običajno uporabljajo skupaj z regularnimi izrazi, okrajšanimi kot REGEX, ki so edinstveni nizi za opis vzorca iskanja.
Regularni izrazi so vzorci, ki se uporabljajo za iskanje določene kombinacije znakov v besedilnem nizu. Regularni izrazi omogočajo zelo prilagodljiv način iskanja ali prepoznavanja besedilnih nizov. Čeprav v naslednjih vrsticah ne bomo videli regularnih izrazov, bomo uporabili vzorce ali nize.
V terminalu poiščite nize ali vzorce
Ukaz Grep
Grep je kratica za Globalni tisk z regularnim izrazom. To je močno orodje ukazne vrstice, ki je uporabno pri iskanju določenega niza ali vzorca v datoteki. Z grepom lahko bomo uporabljali široko paleto funkcij, na primer tiste, ki nam jih je kolega pred časom razložil v tem blogu.
Sintaksa za uporabo ukaza grep je precej preprosta:
grep PATRON [RUTA AL ARCHIVO]
Če želite na primer poiskati niz 'Ubuntu'v datoteki, ki jo bomo v tem primeru poklicali text.txt, ne da bi upoštevali razliko med velikimi in malimi črkami, bomo v terminalu (Ctrl + Alt + T) morali izvesti samo ukaz:
grep -i Ubuntu texto.txt
Ukaz sed
Žeja je kratica za Urejevalnik toka. Je še eno uporabno orodje za terminal, s katerim lahko manipuliramo z besedilom v datoteki. Sed išče, filtrira in nadomešča nize v dani datoteki.
Ukaz sed privzeto natisne izhod v IZPUST (Standardni izhod). To pomeni, da se rezultat izvedbe natisne na terminal, namesto da se shrani v datoteko.
Ukaz Sed lahko uporabite na naslednji način:
sed -OPCIONES COMANDO [RUTA AL ARCHIVO]
Na primer, če želite nadomestiti vse pojavitveLinux'v besedilu avtorja'Linux', ukaz za uporabo bi bil naslednji:
sed 's/Linux/GnuLinux/g' texto.txt
Če je tisto, kar iščemo preusmerite izhod v datoteko, namesto da bi jo natisnili na terminal, uporabili bomo znak za preusmeritev, kot sledi:
sed 's/Linux/GnuLinux/g' texto.txt > salida.txt
Rezultat ukaza se shrani v datoteko output.txt namesto da bi se natisnili na zaslon.
Če si želite ogledati več možnosti, lahko glejte strani z navodili:
man sed
ack
Ack je hitro orodje ukazne vrstice, napisano v Perlu. Velja za prijazno zamenjavo pripomočka grep, ki ustvarja tudi rezultate na vizualno privlačen način.
za namestite ack v našem sistemu bomo morali v terminalu izvršiti (Ctrl + Alt + T):
sudo apt install ack
Ukaz Ack išče v datoteki ali imeniku vrstice, ki vsebujejo ujemanje iskalnih kriterijev. Nato označite ustrezen niz. To orodje lahko ločuje datoteke glede na njihove končnice.
Sintaksa ukaza Ack bi bila podobna naslednji
ack [OPCIONES] PATRÓN [RUTA AL ARCHIVO]
Na primer za iskanje izraza Linux v datoteki bi morali izvršiti:
ack Linux texto.txt
Iskalno orodje je precej pametno in če uporabnik ne predloži datotek ali imenikov, poišče vzorec iskanja v trenutnem imeniku in podimenikih.
V naslednjem primeru ni na voljo nobena datoteka ali imenik. Ack samodejno zazna razpoložljivo datoteko v imeniku in poišče ustrezen vzorec:
ack Linux
ripgrep
ripgrep je pripomoček za več platform za iskanje vzorcev regularnih izrazov. Je hitrejši od vseh zgoraj omenjenih orodij za iskanje in rekurzivno išče ustrezne vzorce. Omogoča tudi iskanje določenih vrst datotek. Privzeto ripgrep preskoči binarne datoteke in skrite datoteke / imenike.
za namestite ripgrep v sistemu morate v terminalu zagnati naslednji ukaz (Ctrl + Alt + T):
sudo apt install ripgrep
Sintaksa za uporabo ripgrepa je precej preprosta:
rg [OPCIONES] PATRÓN [RUTA AL ARCHIVO]
Če bi želeli iskati verigo "Linux'v datotekah, ki se nahajajo v trenutnem imeniku, bomo morali izvesti samo ukaz:
rg Linux
Uporabniki lahko vidijo več možnosti strani:
man rg
Srebrni iskalec
za namestite to orodje, v Ubuntuju bomo morali odpreti samo terminal (Ctrl + Alt + T) in napisati ukaz:
sudo apt install silversearcher-ag
Silver Searcher je medplatformno odprtokodno orodje za iskanje, podobno kot ack, vendar s poudarkom na hitrosti. Omogoča enostavno iskanje določenega niza v datotekah v najkrajšem možnem času. Sintaksa za uporabo bi bila:
ag OPCIONES PATRÓN_DE_BÚSQUEDA /ruta/al/archivo
Če želite na primer poiskatiLinux'v datoteki text.txt, v terminal bi morali zapisati (Ctrl + Alt + T):
ag Linux texto.txt
Če si želite ogledati več možnosti, se lahko obrnete na strani:
man ag
To je le nekaj najpogosteje uporabljenih orodij ukazne vrstice za iskanje, filtriranje in obdelavo besedila v Linuxu.