Pronalaženje datoteka na Linux sustavu može biti teško ako ne znate kako. Najbolji način za pronalaženje datoteka na Linuxu je korištenje nekoliko terminalnih naredbi. Ovladavanje nekim od ovih naredbi može vam dati potpunu kontrolu nad datotekama, a korisnije su od jednostavnih funkcija pretraživanja drugih operativnih sustava.
Korak
Metoda 1 od 3: Upotreba "pronađi"
Korak 1. Potražite datoteke prema nazivu
Ova vrsta pretraživanja je najosnovnija, a to možete učiniti pomoću naredbe find. Naredba u nastavku izvršit će pretraživanje na temelju riječi unijete u direktorij u kojem se nalazite, kao i poddirektorija unutar njega.
find -name "naziv datoteke"
Ako umjesto -name koristite -iname, razlika između velikih i malih slova neće imati učinka. Naredba -name smatra velika i mala slova različitim znakovima
Korak 2. Postavite početak pretraživanja u korijenskom direktoriju
Ako želite pretraživati na cijelom sustavu, ključnoj riječi možete dodati / modifikator. Modifikator govori naredbi find da temeljito pretražuje, počevši od korijenskog direktorija.
find / -iname "naziv datoteke"
- Možete započeti pretraživanje u određenom direktoriju zamjenom /modifikatora sa stazom direktorija, na primjer /home /pat.
- Možeš koristiti. osim / tako da se pretraživanja izvode samo unutar direktorija u kojem se nalazite, a također i u poddirektorijima unutar njega.
Korak 3. Koristite zamjenske znakove
* za traženje svega što djelomično odgovara vašim ključnim riječima.
Zamjenski znak * može se koristiti za pronalaženje datoteka čija potpuna imena ne znate ili ako želite pronaći sve datoteke s određenim nastavkom.
find /home /pat -iname "*.conf"
- Gornja naredba će vratiti sve.conf datoteke u korisničkom imeniku pod imenom Pat (kao i poddirektorije u njemu).
- Također ga možete koristiti za pronalaženje bilo čega čije ime djelomično odgovara toj ključnoj riječi. Na primjer, ako imate puno dokumenata vezanih za wikiHow, možete ih pronaći upisivanjem "*wiki*".
Korak 4. Olakšajte upravljanje rezultatima pretraživanja
Ako je rezultata pretraživanja previše, bit će vam teško pronaći željenu datoteku. Upotrijebite znak | i poslati rezultate pretraživanja natrag u program za filtriranje "manje". Na taj način možete lakše listati i filtrirati rezultate pretraživanja.
find /home /pat -iname "*.conf" | manje
Korak 5. Pronađite rezultate pretraživanja s određenom vrstom
Pomoću modifikatora možete vratiti samo određene vrste rezultata. Možete pretraživati uobičajene datoteke (f), direktorije (d), simboličke veze (l), znakovne uređaje (c) i blokirati uređaje (b) pomoću odgovarajućih modifikatora.
find / -type f -iname "naziv datoteke"
Korak 6. Filtrirajte rezultate pretraživanja prema veličini
Ako imate puno datoteka sličnog naziva, ali znate veličinu datoteke koju želite, možete filtrirati pretraživanje prema veličini.
find / -size +50M -name "naziv datoteke"
- Gornja naredba vratit će rezultate pretraživanja od 50 megabajta ili više. Možete koristiti + ili - za traženje datoteka veće ili manje veličine. Izostavljanje znaka + ili - čini da pretraživanje vraća samo rezultate s doista "ispravnom" veličinom.
- Pretraživanje možete filtrirati prema bajtovima (c), kilobajtima (k), megabajtima (M), gigabajtima (G) ili blokovima od 512 bajtova (b). Imajte na umu da oznake razlikuju velika i mala slova.
Korak 7. Pomoću logičkih operatora kombinirajte filtre za pretraživanje
Operatore -and, -or i -not možete koristiti za kombiniranje različitih pretraživanja.
find /travelphotos -type f -size +200k -not -iname "*2015*"
Gornja naredba tražit će datoteke u direktoriju "travelphotos" koje su veće od 200 kilobajta, ali u svom nazivu nemaju riječ "2015"
Korak 8. Potražite datoteku prema imenu vlasnika ili dopuštenju
Ako pokušavate pronaći određenu datoteku koja pripada određenom korisniku ili tražite datoteku s određenim dopuštenjima, možete suziti pretraživanje.
find / -user pat -iname "filename" find / -grupni korisnici -iname "filename" find / -perm 777 -iname "filename"
Gore navedeni primjeri provest će pretraživanje određenog korisnika, grupe ili dopuštenja unutar ključne riječi. Također možete izostaviti naziv datoteke da biste vratili sve datoteke koje odgovaraju toj vrsti. Na primjer, find / -perm 777 vratit će sve datoteke sa 777 dopuštenja (bez ograničenja)
Korak 9. Povežite naredbe za izvođenje radnje kada je datoteka pronađena
Naredbu find možete kombinirati s drugim naredbama tako da s tom naredbom možete obraditi datoteke vraćene po ključnoj riječi. Odvojite naredbu find i drugu naredbu s -exec zastavicom, a zatim kraj reda s {};
pronaći. -tip f -perm 777 -exec chmod 755 {};
Gornja naredba pretražit će direktorij u kojem se nalazite (i sve poddirektorije u njemu) za datoteke s dopuštenjima 777. Zatim će naredba chmod promijeniti dopuštenja u 755
Metoda 2 od 3: Upotreba "lociraj"
Korak 1. Instalirajte
pronaći funkcionalnost. Naredba locate općenito je brža od naredbe find, zbog upotrebe baze podataka vašeg datotečnog sustava. Nisu sve vrste Linuxa opremljene funkcijom locate pa unesite sljedeću naredbu da biste je instalirali:
- Upišite sudo apt-get update, a zatim pritisnite Enter.
- Možete ga instalirati na Debian i ubuntu ovako: Upišite sudo apt-get install mlocate, a zatim pritisnite Enter. Ako je funkcija locate instalirana ranije, vidjet ćete da je poruka mlocate već najnovija verzija.
- Na Arch Linuxu upotrijebite pacman paketni upravitelj: pacman -Syu mlocate
- Za Gentoo upotrijebite emerge: emerge mlocate
Korak 2. Ažuriranje
pronaći baza podataka Vas. Naredba locate neće moći pronaći ništa dok se ne stvori i ažurira. Proces se obično izvodi automatski svaki dan, ali možete ga i ažurirati ručno. To morate učiniti ako želite koristiti funkciju lociranja što je prije moguće.
Upišite sudo updatedb, a zatim pritisnite Enter
Korak 3. Upotrijebite
pronaći za jednostavno pretraživanje.
Funkcija locate radi brzo, ali nema toliko mogućnosti kao naredba find. Osnovna pretraživanja datoteka možete izvesti na sličan način kao naredba find.
lociraj -i "*.jpg"
- Gornja naredba pretražit će u cijelom sustavu datoteke s nastavkom.jpg. Zamjenski znak * radi slično kao naredba find.
- Kao i naredba find, modifikator -i također čini velika i mala slova u ključnim riječima istim.
Korak 4. Ograničite rezultate pretraživanja
Ako vaše pretraživanje vrati toliko rezultata da vam je teško koristiti ih, te rezultate možete smanjiti pomoću modifikatora -n, nakon čega slijedi broj rezultata koje želite vratiti.
lociraj -n 20 -i "*.jpg"
- Prikazat će se samo 20 rezultata pretraživanja.
- Također možete koristiti | za slanje rezultata pretraživanja u manje filtrirani program radi lakšeg pomicanja rezultata.
Metoda 3 od 3: Traženje teksta u datotekama
Korak 1. Upotrijebite naredbu
grep kako biste pronašli tekstualni niz u datoteci.
Ako tražite datoteku koja sadrži određeni izraz ili niz znakova, možete koristiti naredbu grep. Osnovna naredba grep ima sljedeći format:
grep -r -i "upit za pretraživanje"/put/do/direktorija/
- Modifikator -r čini pretraživanje "rekurzivnim", pa će se pretraživanje izvršiti unutar direktorija i svih poddirektorija unutar njega kako bi se pronašle datoteke koje sadrže tekst s ključnom riječi za pretraživanje.
- Modifikator -i označava da ključna riječ za pretraživanje ne razlikuje velika i mala slova. Ako želite prisiliti pretraživanje da razlikuje velika i mala slova, zanemarite modifikator -i.
Korak 2. Uklonite višak teksta
Prilikom pretraživanja grepa kao što je gore navedeno, vidjet ćete naziv datoteke s istaknutim slovima. Možete sakriti odgovarajući tekst i prikazati samo naziv direktorija datoteke i put dodavanjem:
grep -r -i "ključna riječ za pretraživanje"/put/do/direktorija/| izrezati -d: -f1
Korak 3. Sakrijte poruku o pogrešci
Naredba grep vratit će pogrešku pri pokušaju pristupa direktoriju bez odgovarajućih dopuštenja ili pri ulasku u prazan direktorij. Poruke o pogreškama možete poslati na /dev /null kako se ne bi pojavile.
grep -r -i "ključna riječ za pretraživanje"/path/to/directory/2>/dev/null