Primjeri upotrebe naredbe Pronađi u Linuxu

Najpopularniji upravitelji datoteka za operativne sustave na Linux kernelu imaju prilično funkcionalan alat za pretraživanje. Međutim, parametri koji nisu uvijek prisutni u njemu dovoljni su korisniku da traži potrebne informacije. U ovom slučaju, spašava se standardni uslužni program koji prolazi kroz terminal . To vam omogućuje jednostavno pronalaženje potrebnih podataka u određenom direktoriju ili u cijelom sustavu unosom naredbe, argumenta i opcije.

Koristite naredbu find u Linuxu.

Naredba find je dizajnirana za traženje različitih objekata, uključujući datoteke svih formata i direktorija različitih dubina. Korisnik mora samo unijeti samu naredbu, odrediti željenu vrijednost i dodijeliti argumente za postavljanje parametara filtriranja. Provođenje postupka od strane samog uslužnog programa obično ne oduzima puno vremena, ali također ovisi o količini skeniranih informacija. Pogledajmo sada primjere korištenja pronaći u više detalja.

Dođite do direktorija kroz konzolu

Za početak, želim se malo povući iz glavnog tima i dotaknuti temu dodatnih akcija koje će u budućnosti pomoći pri upravljanju iz konzole. Činjenica je da uslužni programi u Linux distribucijama nisu izoštreni pretraživanjem svih stavki na računalu. Sve procese treba pokrenuti samo s punim položajem elemenata ili na mjestu pomoću naredbe cd . To se može učiniti vrlo jednostavno:

  1. Otvorite instalirani upravitelj datoteka i otiđite do željene mape u kojoj želite koristiti naredbu find u budućnosti.
  2. Dođite do odgovarajućeg direktorija kroz Linux datotečni upravitelj

  3. Desnom tipkom miša kliknite bilo koji objekt i pronađite stavku "Svojstva" .
  4. Prijelaz na svojstva objekta u Linux operacijskom sustavu

  5. Vidjet ćete nadređenu mapu s punom stazom. Zapamtite ga kako biste napravili prijelaz s terminala .
  6. Nabavite nadređenu mapu objekta putem svojstava u Linuxu

  7. Sada pokrenite konzolu, na primjer, kroz izbornik.
  8. Pokretanje terminala za unos naredbi u Linuxu

  9. cd /home/user/folder napišite naredbu cd /home/user/folder , gdje je korisnik ime korisničke mape i mapa je naziv traženog direktorija.
  10. Premjestite se na mjesto na linux terminalu

Ako prije korištenja pronađite gore navedene upute, možete izostaviti punu putanju do datoteke, pod uvjetom da se nalazi na odabranoj lokaciji. Takvo rješenje značajno će ubrzati naredbe za unos podataka u budućnosti.

Potražite datoteke u trenutnom direktoriju

Kada pokrenete find iz konzole koju ste upravo pokrenuli, rezultat pretraživanja bit će prikazan u vašem matičnom direktoriju aktivnog korisnika. U drugom slučaju, na primjer, kada aktivirate tijekom pretraživanja po lokaciji, u rezultatima ćete vidjeti sve podmape i datoteke ovog mjesta prisutne u njima.

Upotreba pronalaženja bez argumenata u Linuxu

Aktiviranje pronalaženja bez argumenata i opcija koristi se kada je potrebno pregledati sve stavke odjednom. Ako se njihovo ime u potpunosti ne uklapa u nizove, vrijedi mijenjati naredbu tako da pronađe traženi oblik find . -print find . -print .

Potražite datoteke u navedenom direktoriju

Naredba za prikaz datoteka kroz zadanu putanju gotovo je ista kao i ona koju smo gore spomenuli. Trebali biste odrediti i find , a zatim dodati ./folder ako želite saznati više o direktoriju na trenutnoj lokaciji ili trebate navesti punu putanju upisivanjem, na primjer, find ./home/user/downloads/folder , gdje je mapa krajnji imenik Svaki će element biti prikazan u zasebnim redovima redoslijedom njihove dubine.

Upotrebom naredbe find s lokacijom datoteke u Linuxu

Pretraživanje po nazivu

Ponekad postoji potreba za prikazom samo objekata koji zadovoljavaju ime. Tada korisnik mora postaviti zasebnu opciju za naredbu, tako da razumije žalbu. Ulazni redak ima oblik: find . -name "word", gdje je riječ ključna riječ za pretraživanje, koja mora biti napisana u dvostrukim navodnicima i osjetljivim na velika slova za svaki znak.

Pronalaženje datoteka po imenu pomoću naredbe find u Linuxu

Ako ne znate točan slučaj svakog slova, ili želite prikazati sva odgovarajuća imena, bez uzimanja u obzir tog parametra, unesite find . -iname "word" u konzolu find . -iname "word" find . -iname "word" .

Za filtriranje rezultata po ključnoj riječi, još jedan se dodaje argumentu -name . Naredba dobiva oblik find . -not -name "word" find . -not -name "word" , gdje je riječ riječ koju treba izbrisati.

Omogući naredbu za pronalaženje filtriranja ključnih riječi u Linuxu

Ipak, ponekad postoji potreba za pronalaženjem objekata jednim ključem, dok se drugi isključuju. Zatim se dodaju nekoliko opcija pretraživanja, a ulazna linija je sljedeća: find . -name "word" -not name "*.txt" find . -name "word" -not name "*.txt" . Napominjemo da drugi argument u navodnicima označava " * .txt" , što znači da pronalazi radove ne samo s imenima, već is formatima datoteka koji su navedeni u ovom obrascu.

Kombinirano pretraživanje po imenu s naredbom find u Linuxu

Tu je i operater OR . To vam omogućuje da pronađete jedan ili više prikladnih argumenata odjednom. Svaki je naveden zasebno, s dodatkom odgovarajućih argumenata. Rezultat je nešto slično ovome: find -name "word" -o -name "word1" .

Koristeći opciju OR u naredbi find Linux

Odredite dubinu pretraživanja

Naredba find pomoći će korisniku čak i kada mora pronaći sadržaj direktorija samo na navedenoj dubini, na primjer, analiza nije potrebna unutar treće podmape. Da biste postavili ta ograničenja, unesite find . -maxdepth N -name "word" find . -maxdepth N -name "word" , gdje je N maksimalna dubina, i -ime "riječ" je bilo koji kasniji argument.

Navedite dubinu skeniranja pomoću naredbe find u Linuxu

Pretražujte više direktorija

U mnogim direktorijima postoji nekoliko mapa s različitim sadržajima. Ako ih ima mnogo, a pretraživanje se mora obaviti samo u određenim, tada ćete to morati navesti pri unosu find ./folder ./folder1 -type f -name "word" , gdje je ./folder ./folder1 popis prikladnih direktorija i -name "word" - preostali argumenti.

Pretražujte više mapa kada koristite naredbu find u Linuxu

Prikaži skrivene stavke

Bez odgovarajućeg argumenta, skriveni objekti u skeniranim direktorijima neće biti prikazani u konzoli. Stoga korisnik ručno unosi dodatnu opciju kako bi završio naredbom: find ~ -type f -name ".*" . Dobit ćete potpuni popis svih datoteka, ali ako neke od njih nisu dostupne, upišite sudo u redak prije nego što riječ pronađe kako biste aktivirali prava superkorisnika.

Prikažite skrivene datoteke pomoću naredbe find u Linuxu

Skeniranje kućnih mapa za grupe i korisnike

Svaki korisnik može kreirati neograničen broj direktorija i objekata na različitim lokacijama. Najbrži način da pronađete informacije koje pripadaju jednom od korisnika, koristeći naredbu pronađi i jedan od njegovih argumenata. Na popisu "Terminal" find . -user username find . -user username , gdje je korisničko ime korisničko ime. Nakon ulaska skeniranje će se automatski pokrenuti.

Prikaži datoteke u vlasništvu korisnika s naredbom find u Linuxu

Otprilike ista shema funkcionira s korisničkim skupinama. Analiza datoteka povezanih s jednom od grupa find /var/www -group groupname putem find /var/www -group groupname . Ne zaboravite da postoji velik broj objekata, a ponekad je potrebno puno vremena da ih sve iznesete.

Prikaži datoteke koje pripadaju određenoj grupi pomoću naredbe find u Linuxu

Filtrirajte prema datumu promjene

Operativni sustav automatski sprema datum promjene svake postojeće datoteke. Naredba find omogućuje vam da ih sve pronađete po navedenom parametru. Vi samo trebate registrirati sudo find / -mtime N , gdje je N broj dana prije kada je objekt zadnji put izmijenjen. Prefiks sudo ovdje je potreban za dobivanje podataka o datotekama koje su namijenjene samo za superkorisnika.

Filtrirajte prema datumu promjene pomoću naredbe find u Linuxu

Ako ste zainteresirani za gledanje stavki koje su zadnji put otvorene prije određenog broja dana, onda linija malo mijenja svoj izgled u sudo find / -atime N

Filtrirajte prema datumu otvaranja pomoću naredbe find u Linuxu

Filtrirajte prema veličini datoteke

Svaki objekt ima svoju veličinu, odnosno, naredba za pretraživanje datoteka mora imati funkciju koja vam omogućuje filtriranje po ovom parametru. find je u mogućnosti to učiniti, korisnik samo treba postaviti veličinu argumentom. Jednostavno unesite find / -size N , gdje je N volumen u bajtovima, megabajtima (M) ili gigabajtima (G).

Filtriranje pretraživanja po veličini pomoću traženja u Linuxu

Možete odrediti raspon željenih stavki. Tada se kvalifikatori uklapaju u naredbu i dobivate, na primjer, sljedeći redak: find / -size +500M -size -1000M . Ova analiza prikazivat će datoteke veće od 500 megabajta, ali manje od 1000.

Postavite raspon veličina datoteka kako biste ih pronašli pomoću pronalaženja u Linuxu

Potražite prazne datoteke i direktorije

Neke datoteke ili mape su prazne. Oni samo zauzimaju dodatni prostor na disku i ponekad ometaju normalnu interakciju s računalom. Treba ih pronaći kako bi odlučili o daljnjim akcijama, a find /folder -type f -empty će pomoći u tome, gdje je mapa mjesto gdje se obavlja skeniranje.

Pokaži prazne objekte pomoću traženja u Linuxu

U međuvremenu, želim ukratko spomenuti i druge korisne argumente koji s vremena na vrijeme postaju korisni za korisnika:

  • -mount - ograničenje samo na trenutni datotečni sustav;
  • -type f - prikaz samo datoteka;
  • -type d - prikaz samo direktorija;
  • -nogroup , -nouser - traži datoteke koje ne pripadaju nijednoj grupi ili ne pripadaju korisniku;
  • -version - saznajte verziju korištenog uslužnog programa.

Na ovom poznavanju naredbe find je dovršena. Ako želite detaljno proučiti druge standardne alate konzole operacijskih sustava na Linux kernelu, savjetujemo vam da pogledate naš zasebni materijal na sljedećem linku.

Više detalja: Često korištene naredbe u Linux terminalu

Nakon traženja potrebnih informacija možete s njima obavljati bilo koje druge radnje, na primjer, uređivanje, brisanje ili proučavanje sadržaja. To će pomoći drugim ugrađenim programima "Terminal" . Primjeri njihove uporabe nalaze se u nastavku.

Vidi također: Primjeri naredbi grep / mačka / ls u linuxu