10 korisnih praktičnih primjera naredbi 'lociranja' za početnike u Linuxu


Jedno od najodvratnijih iskustava sa kojima se većina novih korisnika Linux platforme obično suočava je nemogućnost pronalaženja najjednostavnijih, a opet efikasnijih načina traženja datoteka na svom sistemu.

Linux, kao gotovo svaki drugi operativni sistem, koristi nekoliko mehanizama da odgovori na upite za pretraživanje korisnika. Dva najpopularnija uslužna programa za pretraživanje datoteka koja su dostupna korisnicima zovu se pronađi i lociraj.

Sada je važno napomenuti da oba procesa pretraživanja rade izuzetno dobro, ali bez obzira na to, centar ovog članka će biti više na locate uslužnom programu, koji je praktičniji od ta dva jer koristi efikasnije načine za brzu obradu upita koje unose korisnici.

Uslužni program lociranje radi bolje i brže od svog pronađi pandana jer umjesto da pretražuje sistem datoteka kada se pokrene pretraga fajla – Nešto find radi – locate bi pregledavao bazu podataka. Ova baza podataka sadrži bitove i dijelove datoteka i njihove odgovarajuće staze na vašem sistemu.

Evo deset jednostavnih naredbi lociranja koje će vas postaviti da postanete produktivniji sa vašom Linux mašinom.

1. Korištenje locate Command

Aktiviranje komande lociranja za traženje datoteke prilično je jednostavno i jednostavno. Sve što treba da uradite je da ukucate:


$ locate LAMP-Setup.odt

/home/tecmint/LAMP-Setup.odt
/home/tecmint/TecMint.com/LAMP-Setup.odt

2. Ograničite upite za pretraživanje na određeni broj

Možete ograničiti povrate pretraživanja na potreban broj kako biste izbjegli suvišnost u rezultatima pretraživanja koristeći naredbu -n.

Na primjer, ako želite samo 20 rezultata iz vaših upita, možete upisati sljedeću naredbu:


$ locate "*.html" -n 20

/home/tecmint/.config/google-chrome/Default/Extensions/aapocclcgogkmnckokdopfmhonfmgoek/0.9_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/aohghmighlieiainnegkcijnfilokake/0.9_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/felcaaldnbdncclmgdcncolpebgiejap/1.1_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/kbfnbcaeplbcioakkpcpgfkobkghlhen/14.752.848_0/forge.html
/home/tecmint/.config/google-chrome/Default/Extensions/kbfnbcaeplbcioakkpcpgfkobkghlhen/14.752.848_0/src/popup.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/additional-feature.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/background.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/edit.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/help.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/options.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/popup.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/purchase.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/upload.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/oauth2/oauth2.html
/home/tecmint/.config/google-chrome/Default/Extensions/nmmhkkegccagdldgiimedpiccmgmieda/1.0.0.2_0/html/craw_window.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_route_details.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/feedback.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/devices.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/index.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/offers.html

Rezultati će pokazati prvih 20 fajlova koji završavaju sa .html.

3. Prikažite broj odgovarajućih unosa

Ako želite da prikažete broj svih odgovarajućih unosa u fajlu „tecmint“, koristite naredbu locate -c.


$ locate -c [tecmint]*

1550

4. Ignorirajte izlaze lociranja osjetljive na velika i mala slova

Prema zadanim postavkama, locate je konfiguriran za obradu upita na način osjetljiv na velika i mala slova, što znači da će TEXT.TXT ukazati na drugačiji rezultat od text.txt .

Da bi naredba lociranje zanemarila osjetljivost na velika i mala slova i prikazala rezultate za upite i za velika i za mala slova, unesite komande s opcijom -i.


$ locate -i *text.txt*

/home/tecmint/TEXT.txt
/home/tecmint/text.txt

5. Osvježite mlocate bazu podataka

Pošto se naredba locate oslanja na bazu podataka koja se zove mlocate. Navedenu bazu podataka treba redovno ažurirati da bi uslužni program za naredbe radio
efikasno.

Za ažuriranje baze podataka mlocate koristite uslužni program pod nazivom updatedb. Treba napomenuti da će vam trebati privilegije superkorisnika da bi ovo ispravno funkcionisalo, bilo da se mora izvršiti kao root ili sudo privilegije.


sudo updatedb

6. Prikažite samo datoteke prisutne u vašem sistemu

Kada imate ažuriranu bazu podataka mlocate**, naredba locate i dalje proizvodi rezultate datoteka čije su fizičke kopije izbrisane iz vašeg sistema.

Da biste izbjegli da vidite rezultate datoteka koje nisu prisutne na vašoj mašini u vrijeme probijanja naredbe, morat ćete koristiti naredbu locate-e. Proces pretražuje vaš sistem kako bi potvrdio postojanje datoteke koju tražite čak i ako je još uvijek prisutna u vašem mlocate.db.


$ locate -i -e *text.txt*

/home/tecmint/text.txt

7. Odvojite izlazne unose bez novog reda

Zadani separator naredbe locate je znak za novi red (\\n). Ali ako više volite da koristite drugi separator kao što je ASCII NUL, to možete učiniti pomoću opcije komandne linije -0.


$ locate -i -0 *text.txt*

/home/tecmint/TEXT.txt/home/tecmint/text.txt

8. Pregledajte svoju Locate Database

Ako ste u nedoumici u pogledu trenutnog statusa vašeg mlocate.db, možete lako vidjeti statistiku baze podataka lociranja pomoću naredbe -S.


$ locate -S

Database /var/lib/mlocate/mlocate.db:
	32,246 directories
	4,18,850 files
	2,92,36,692 bytes in file names
	1,13,64,319 bytes used to store database

9. Suzbijte poruke o greškama u Locate

Stalni pokušaj pristupa vašoj bazi podataka o lokaciji ponekad daje nepotrebne poruke o grešci u kojima se navodi da nemate potrebne privilegije da imate root pristup mlocate.db, jer ste samo običan korisnik, a ne potreban superkorisnik.

Da biste potpuno uklonili ove poruke, koristite naredbu -q.


locate "\*.dat" -q*

10. Odaberite drugu lokaciju mlocate

Ako unosite upite tražeći rezultate koji nisu prisutni u zadanoj bazi podataka mlocate i želite odgovore iz drugog mlocate.db koji se nalazi negdje drugdje u vašem sistemu, možete usmjeriti na locate naredbu u drugu mlocate bazu podataka na drugom dijelu vašeg sistema pomoću naredbe -d.


locate -d <new db path> <filename>

Komanda locate može izgledati kao jedan od onih uslužnih programa koji radi sve što ste tražili od njega bez mnogo gužve, ali u stvari, kako bi proces zadržao svoju efikasnost, mlocate.db se s vremena na vrijeme treba hraniti informacijama. Ako to ne učinite, program bi mogao postati pomalo beskorisnim.