Iako je Linux terminal tekstualno sučelje koje djeluje složeno, zapravo je vrlo fleksibilno, jednostavno za korištenje i vrlo koristan alat. Naredbe se lako mogu kopirati iz mrežnih izvora i zalijepiti u terminal za obavljanje različitih operacija. Postoji mnogo naredbi, ali ovaj će se post fokusirati na naredbu find.
Naredba find koristi se za pronalaženje, filtriranje ili pretraživanje datoteka i mapa u vašem sustavu u skladu s uvjetima koje su odredili korisnici i izvršavanje nekoliko operacija nad njima.
Razmotrimo detaljno kako koristiti naredbu find, njezinu sintaksu i razne operacije koje ova naredba izvodi.
Sintaksa naredbe za pronalaženje u Linuxu
Sintaksa naredbe find prikazana je ispod:
pronaći [staza] [mogućnosti] [izraz]
Uz naredbu find idu tri atributa:
- [put]: Definira direktorij u kojem počinje pretraživanje.
- [opcije]: Definira kriterije filtriranja, npr. pretraživanje datoteke/mape prema nazivu, dopuštenju, vremenu ili datumu.
- [izraz]: Definira koje radnje treba izvršiti s datotekom.
Svi gore navedeni atributi su izborni jer se mogu koristiti prema zahtjevu.
Za demonstraciju sam stvorio različite direktorije i neke tekstualne datoteke, pogledajte sliku ispod:
Traženje datoteke po imenu
Za pretraživanje datoteke prema nazivu upotrijebite donju naredbu:
$pronaći.-ImeMyTextFile1.txt
Točka nakon pronalaska u gornjoj naredbi označava trenutni direktorij.
Ako se ne sjećate točnog naziva datoteke, pretraživanje se može dodatno poboljšati i učiniti osjetljivim na velika i mala slova pomoću -iname na mjestu imena:
$pronaći.-imemytextfile1.txt
Traženje datoteke prema vrsti
Da biste pronašli datoteku prema njezinoj vrsti, upotrijebite opciju -type sa slovima koja su također poznata kao deskriptori, poput f za datoteke, d za direktorije, l za simboličku vezu i s za utičnice.
Za pretraživanje svih direktorija koristite:
$pronaći.-tipd
Za traženje datoteka upotrijebite:
$pronaći.-tipf
Pronalaženje datoteke pomoću nastavka datoteke
Za pretraživanje datoteke prema uzorku, npr. Proširenju datoteke, poput prikaza svih datoteka s .txt, upotrijebite sljedeću naredbu:
$pronaći.-Ime *.txt
Sve datoteke s .txt prikazat će se zajedno s odgovarajućim direktorijima.
Pronalaženje i brisanje datoteke
Za pretraživanje i brisanje datoteke upotrijebite naredbu u nastavku:
$pronaći.-imemytextfile1.txt-exec rm {};
Gornja naredba prvo pretražuje datoteku, a zatim je briše. Slika pokazuje da je MyTextFile1 izbrisan.
Za brisanje svih datoteka s nastavkom .txt možete upotrijebiti priloženu naredbu:
$pronaći.-Ime *.txt-izbrisati
Pronalaženje datoteke prema veličini
Naredba find također može pretraživati datoteku po veličini. Jednostavno upotrijebite opciju -size zajedno s njezinim deskriptorima, poput b za blokove od 512 Kb, c za bajtove, k za kilobajte, M i G za megabajte i gigabajte:
$pronaći.-tipf-veličina -1024c
Gore spomenuta naredba pretražuje sve datoteke veličine manje od 1024 bajta. Pretraživanje se može dodatno poboljšati, na primjer, ako želimo pronaći sve datoteke manje od 1 MB, koristimo naredbu u nastavku:
$pronaći.-tipf-veličina1 mil
Za sve datoteke veće od 1 MB upotrijebite naredbu u nastavku:
$pronaći.-tipf-veličina+1M
Raspon veličina također se može definirati pomoću priložene naredbe:
$pronaći. -tipf-veličina+1M-veličina10MPronalaženje datoteka dopuštenjem
Za pretraživanje datoteke dopuštenjem koristit ćemo opciju -perm, zatim kôd dopuštenja, kao što je prikazano u nastavku:
$pronaći.-trajna 664
Pronađite tekst unutar tekstualnih datoteka
Da biste pronašli tekst u više tekstualnih datoteka u svom sustavu, upotrijebite donju naredbu:
$pronaći.-tipf-Ime *.txt-exec zahvat'Zdravo'{};
Naredba traži riječ Hello u tekstualnim datotekama. Izlaz su tekstualni nizovi iz tekstualnih datoteka koje sadrže Hello.
Pronalaženje datoteke prema datumu i vremenu izmjene
Za pristup datoteci prema zadnjoj izmjeni, upotrijebite naredbu u nastavku:
$pronaći.-tipf-ime *.txt-min+10
Gornja naredba traži datoteku posljednju izmjenu prije četiri minute, a m označava Modifikaciju.
$pronaći. -tipf-ime *.txt-amin -10
Gornja naredba traži datoteku kojoj je zadnji put pristupljeno prije 4 minute, a a in amin označava pristup. Za pristup datoteci koja je izmijenjena prije četiri dana, upotrijebite -mtime +4 umjesto mmin +4.
Zaključak
Naredba find u Linuxu vrlo je korisna naredba koja vam omogućuje pretraživanje datoteke ili imenika prema različitim kriterijima, pa čak vam omogućuje i izmjenu datoteka s terminala. U ovom smo vodiču promatrali sintaksu naredbe find u Linuxu i naučili kako koristiti naredbu find za izvršavanje različitih funkcija.