3 načina za pronalaženje datoteke u Linuxu

Sadržaj:

3 načina za pronalaženje datoteke u Linuxu
3 načina za pronalaženje datoteke u Linuxu

Video: 3 načina za pronalaženje datoteke u Linuxu

Video: 3 načina za pronalaženje datoteke u Linuxu
Video: Wireless Router & Mesh Network Buying Guide | Consumer Reports 2024, Svibanj
Anonim

Pronalaženje datoteke u Linux sustavu može biti teško ako ne znate kako. Najbolji način za pronalaženje datoteka je korištenje nekoliko različitih naredbi terminala. Svladavanjem ovih naredbi možete dobiti potpunu kontrolu nad datotekama, a one su mnogo moćnije od jednostavnih funkcija pretraživanja na drugim operativnim sustavima.

Koraci

Metoda 1 od 3: Upotreba "lociraj"

690519 10 1
690519 10 1

Korak 1. Instalirajte

pronaći funkcionalnost.

Naredba locate općenito radi mnogo brže od find jer radi iz baze podataka vaše datoteke. Nemaju sve distribucije Linuxa instaliranu funkciju lociranja, pa unesite sljedeće naredbe da biste je pokušali instalirati:

  • Upišite sudo apt-get update i pritisnite ↵ Enter.
  • Možete ga instalirati u Debian i Ubuntu ovako: Upišite sudo apt-get install mlocate i pritisnite ↵ Enter. Ako je lokalizacija već instalirana, vidjet ćete da je poruka mlocate već najnovija verzija.
  • U Arch Linuxu upotrijebite upravitelj paketa pacman: pacman -S mlocate
  • Za Gentoo upotrijebite emerge: emerge mlocate
690519 11 1
690519 11 1

Korak 2. Ažurirajte svoj

pronaći baza podataka.

Naredba locate neće moći ništa pronaći dok se ne izgradi i ažurira baza podataka. To se događa automatski svakodnevno, ali možete i ručno ažurirati. Morat ćete to učiniti ako želite odmah početi koristiti locate.

Upišite sudo updatedb i pritisnite ↵ Enter

690519 12 1
690519 12 1

Korak 3. Upotrijebite

pronaći za obavljanje jednostavnih pretraživanja.

Naredba locate je brza, ali nema toliko mogućnosti kao naredba find. Osnovno pretraživanje datoteka možete izvesti na isti način kao i naredba find.

lociraj -i "*.jpg"

  • Ova naredba pretražit će u cijelom sustavu datoteke s nastavkom.jpg. Zamjenski znak * funkcionira na isti način kao i naredba find.
  • Poput naredbe find, -i zanemaruje slučaj vašeg upita.
690519 13 1
690519 13 1

Korak 4. Ograničite rezultate pretraživanja

Ako vaša pretraživanja daju previše rezultata za obradu, možete ih smanjiti pomoću opcije -n, a nakon toga slijedi broj rezultata koje želite prikazati.

lociraj -n 20 -i "*.jpg"

  • Prikazat će se samo prvih 20 rezultata koji odgovaraju upitu.
  • Također možete koristiti | pipe za slanje rezultata na manje radi lakšeg pomicanja.

Metoda 2 od 3: Upotreba "pronađi"

690519 1 1
690519 1 1

Korak 1. Potražite datoteku prema nazivu datoteke

Ovo je najosnovnije pretraživanje koje možete izvršiti pomoću naredbe find. Naredba u nastavku tražit će upit u trenutnom direktoriju i svim poddirektorijima.

find -name "naziv datoteke"

Korištenje -iname umjesto -name zanemaruje velika slova vašeg upita. Naredba -name razlikuje velika i mala slova

690519 2 1
690519 2 1

Korak 2. Postavite početak pretraživanja u korijenskom direktoriju

Ako želite pretraživati cijeli sustav, upitu možete dodati / modifikator. Ovo će reći find za pretraživanje svih direktorija počevši od korijenskog direktorija.

find / -iname "naziv datoteke"

  • Možete započeti pretraživanje u određenom direktoriju zamjenom /sa stazom direktorija, poput /home /pat.
  • Možete koristiti a. umjesto / da prisili pretragu samo na trenutni direktorij i poddirektorije.
690519 3 1
690519 3 1

Korak 3. Upotrijebite zamjenski znak

* tražiti sve što odgovara dijelu upita.

Zamjenski znak * može biti koristan za pronalaženje nečega ako ne znate puno ime ili ako želite pronaći sve s određenim proširenjem.

find /home /pat -iname "*.conf"

  • Ovo će vratiti sve.conf datoteke u Patovoj korisničkoj mapi (i poddirektorije).
  • Također ga možete koristiti za pronalaženje svega što odgovara dijelu naziva datoteke. Na primjer, ako imate puno dokumenata vezanih za wikiHow, mogli biste ih sve pronaći upisivanjem "*wiki*".
690519 4 1
690519 4 1

Korak 4. Olakšajte upravljanje rezultatima pretraživanja

Ako dobivate mnogo rezultata pretraživanja, može ih biti teško pregledati. Upotrijebite | znak i poslati rezultate pretraživanja u program za filtriranje "manje". To vam može omogućiti lakše pregledavanje i filtriranje rezultata.

find /home /pat -iname "*.conf" | manje

690519 5 1
690519 5 1

Korak 5. Pronađite određene vrste rezultata

Modifikatore možete koristiti samo za vraćanje određenih vrsta rezultata. Pomoću desnog modifikatora možete pretraživati uobičajene datoteke (f), direktorije (d), simboličke veze (l), znakovne uređaje (c) i blokirati uređaje (b).

find / -type f -iname "naziv datoteke"

690519 6 1
690519 6 1

Korak 6. Filtrirajte rezultate pretraživanja prema veličini

Ako imate puno datoteka sličnih naziva, ali znate veličinu koju tražite, možete filtrirati naše rezultate prema veličini.

find / -size +50M -name "naziv datoteke"

  • Ovo će vratiti rezultate veličine 50 megabajta ili veće. Možete koristiti + ili - za traženje većih ili manjih veličina. Izostavljanje + ili - tražit će datoteke točno određene veličine.
  • Možete filtrirati po bajtovima (c), kilobajtima (k), megabajtima (M), gigabajtima (G) ili 512-bajtnim blokovima (b). Imajte na umu da oznaka veličine razlikuje velika i mala slova.
690519 7 1
690519 7 1

Korak 7. Pomoću logičkih operatora kombinirajte filtre za pretraživanje

Operatore -and, -or i -not možete koristiti za kombiniranje različitih vrsta pretraživanja u jedno.

find /travelphotos -type f -size +200k -not -iname "*2015*"

Naredba će pronaći datoteke u direktoriju "travelphotos" koje su veće od 200 kilobajta, ali nemaju "2015" nigdje u nazivu datoteke

690519 8 1
690519 8 1

Korak 8. Potražite datoteke prema vlasniku ili dopuštenjima

Ako pokušavate pronaći određenu datoteku u vlasništvu korisnika ili datoteke 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"

Gornji primjeri će pretraživati navedene korisnike, grupe ili dopuštenja za upit. Također možete izostaviti upit naziva datoteke da biste vratili sve datoteke koje odgovaraju toj vrsti. Na primjer, find / -perm 777 vratit će sve datoteke s dozvolama 777 (bez ograničenja)

690519 9 1
690519 9 1

Korak 9. Kombinirajte naredbe za izvođenje radnji kada se pronađu datoteke

Naredbu find možete kombinirati s drugim naredbama tako da ih možete izvršiti na datotekama koje je vratio upit. Odvojite naredbu find i drugu naredbu s oznakom -exec, a zatim redak završite s {};

pronaći. -tip f -perm 777 -exec chmod 755 {};

Ovo će pretraživati trenutni direktorij (i sve poddirektorije) za datoteke koje imaju 777 dopuštenja. Zatim će koristiti naredbu chmod za promjenu dopuštenja u 755

Metoda 3 od 3: Traženje teksta u datotekama

690519 14 1
690519 14 1

Korak 1. Upotrijebite

grep naredba za traženje nizova teksta unutar datoteka.

Ako tražite datoteku koja sadrži određeni izraz ili niz znakova, možete koristiti naredbu grep. Osnovna naredba grep oblikovana je na sljedeći način:

grep -r -i "upit za pretraživanje"/put/do/direktorija/

  • -R postavlja pretraživanje na "rekurzivno", pa će pretraživati trenutni direktorij i sve poddirektorije za bilo koju datoteku koja sadrži niz upita.
  • -I označava da upit ne razlikuje velika i mala slova. Ako želite natjerati pretraživanje da obrati pozornost na velika i mala slova, izostavite operator -i.
690519 15 1
690519 15 1

Korak 2. Izrežite dodatni tekst

Kada izvedete grep pretraživanje kao gore, vidjet ćete naziv datoteke zajedno s tekstom s istaknutim upitom. Možete sakriti odgovarajući tekst i samo prikazati nazive datoteka i staze uključivanjem sljedećeg:

grep -r -i "upit za pretraživanje"/put/do/direktorija/| izrezati -d: -f1

690519 16 1
690519 16 1

Korak 3. Sakrij poruke o pogrešci

Naredba grep vratit će pogrešku kada pokuša pristupiti mapama bez ispravnih dopuštenja ili naleti na prazne mape. Poruke o pogrešci možete poslati na /dev /null, što će ih sakriti od izlaza.

grep -r -i "upit za pretraživanje"/path/to/directory/2>/dev/null

Preporučeni: