Većina korisnika koji žele da pronađu određene fajlove i direktorijume na svom Linux sistemu, obično koriste menadžere datoteka. Standardni alati za pretragu u okviru tih menadžera mogu da budu od pomoći u određenoj meri, ali neretko su spori i neefikasni. Za detaljniju i moćniju pretragu fajlova na Linuxu, razmislite o upotrebi terminala.
UPOZORENJE: Pogledajte video vodič koji se nalazi na kraju ovog teksta.
U ovom vodiču ćemo vam predstaviti nekoliko jednostavnih načina za brzo i efikasno pronalaženje fajlova i direktorijuma koristeći Linux terminal.
1. Find i Grep
Find je izuzetno koristan alat za pretragu na Linux desktop okruženju. Funkcioniše putem komandne linije, izvršavajući pretrage na osnovu ključnih reči koje korisnik unese. Find je prilično kompleksan, zbog čega ga mnogi koriste. Da biste počeli sa korišćenjem, otvorite terminal i pokrenite komandu find. Primetićete da find prikazuje skoro svaki fajl na vašem sistemu. Iako je dobro što pretražuje tako široko, problem je što na taj način nikada nećete moći da pronađete ono što vam je zaista potrebno.
Da biste efikasnije koristili find, razmislite o kombinovanju sa drugim komandama, konkretno sa grep. Grep je takođe veoma moćan alat i omogućava filtriranje rezultata pretrage po određenim ključnim rečima. Kombinovanje find i grep daje izuzetne rezultate. Na primer, da biste pronašli fajlove i direktorijume koji sadrže „bitcoin“ na vašem Linux sistemu, koristili biste sledeću komandu:
find | grep bitcoin
Grep filtrira izlaz komande find i prikazuje samo one rezultate koji sadrže ključnu reč „bitcoin“.
Ovaj metod radi i sa određenim ekstenzijama fajlova. Na primer, da biste pronašli sve PNG fajlove na svom Linux sistemu, pokrenite find i grep na sledeći način:
find | grep .png
Verovatno na svom Linux računaru imate veliki broj PNG fajlova, pa da biste listu učinili preglednijom, dodajte još jednu komandu:
find | grep .png | more
2. Mlocate
Mlocate je još jedna izuzetno korisna komanda, verovatno jednostavnija za upotrebu od komande find. Razlog zašto je locate bolji je što ima bolju pretragu po ključnim rečima. Nema potrebe za dodatnim komandnim opcijama ili korišćenjem komande grep. Nažalost, locate nije unapred instaliran na svakoj Linux distribuciji. Evo kako da ga podesite. Prvo, instalirajte softver na svom računaru:
Ubuntu
sudo apt install mlocate
Debian
sudo apt-get install mlocate
Arch Linux
sudo pacman -S mlocate
Fedora
sudo dnf install mlocate
OpenSUSE
sudo zypper install mlocate
Kada je softver instaliran, otvorite terminal i koristite komandu updatedb da biste kreirali novu bazu podataka. Neophodno je kreirati novu bazu podataka, jer u suprotnom komanda locate neće raditi. Imajte na umu da baza podataka skenira SVE fajlove na vašem računaru, stoga se komanda updatedb mora pokrenuti kao root korisnik, a ne kao običan korisnik.
sudo updatedb
Komanda updatedb može da traje određeno vreme, u zavisnosti od brzine vašeg hard diska, kao i broja fajlova na sistemu. Držite terminal otvoren i pustite da se komanda izvrši. Znaćete da je baza podataka spremna kada terminal ponovo prihvati unos teksta.
Da biste vršili pretragu pomoću alata locate, sledite primer ispod. Obavezno promenite „ime fajla“ ili „ključnu reč“ sa vašim pretraživanim terminima, jer su ove reči samo držači mesta:
locate filename
ili
locate keyword
ili
locate "*.FileExtension"
Nakon što unesete termin za pretragu, locate će pretražiti bazu podataka i vratiti rezultate. Ako ima mnogo rezultata, razmislite o preusmeravanju rezultata u tekstualnu datoteku za kasniju upotrebu:
locate keyword >> locate-keyword-results.txt
Filtriranje mlocate tekst fajla
Preusmeravanje rezultata pretrage u tekstualnu datoteku je dobar način da sačuvate rezultate za kasniju upotrebu. Ukoliko treba da filtrirate ove rezultate pretrage pomoću komande locate, pokušajte da koristite komande cat i grep zajedno.
Na primer, da biste filtrirali prethodne rezultate pretrage i pronašli sve MP3 fajlove na svom računaru, komanda bi bila:
cat locate-mp3-results.txt | grep "mp3 keyword"
Grep će filtrirati rezultate i pronaći tačan fajl koji vam je potreban.
3. Ls i Grep
Pored korišćenja alata za pretragu, postoje i drugi načini za traženje fajlova na Linuxu. Glavni način za to u terminalu je pomoću komande ls (aka List). Ova komanda je jednostavna, ali prikazuje sve stavke u određenom direktorijumu. Može biti veoma korisna ukoliko treba da pronađete određeni direktorijum. Međutim, ls sama po sebi može biti neučinkovita. Da biste poboljšali ovu komandu, razmislite o kombinovanju sa grep. Ovo će olakšati filtriranje fajlova ili direktorijuma koje tražite, ili barem filtriranje po ključnim rečima.
Prvo, koristite komandu cd da biste se prebacili u direktorijum u kojem tražite određene fajlove ili direktorijume.
Zatim kombinujte ls i grep:
ls | grep keyword
Alternativno, možete koristiti komandu ls da prikaže i skrivene direktorijume:
ls -a | grep keyword