Ovaj post pokriva što je naredba 'pronađi' i kako funkcionira. Nadalje, vidjet ćemo kako možete koristiti naredbu dok izuzimate direktorije u Linuxu. Nastavi čitati!
Rad s naredbom Find
Naredba 'find' u Linuxu pomaže u lociranju datoteka i direktorija kako biste izbjegli njihovo ručno pronalaženje. Koristi sljedeću sintaksu:
pronaći
Evo primjera gdje pokušavamo pronaći datoteku pod nazivom 'linuxhint.c' u početnom direktoriju:
Izlaz daje apsolutni put za pronalaženje ciljne datoteke. Pretpostavimo da želimo pronaći datoteke pomoću uzorka. Recimo da želimo pronaći bilo koju tekstualnu datoteku u Dokumenti/ na našem Linux sustavu. Specificiramo našu naredbu kao što je ilustrirano u sljedećem:
Primijetite kako naredba 'find' ispisuje sve direktorije koji sadrže tekstualne datoteke. To je jednostavan primjer korištenja Linux naredbe 'pronađi'.
Kako izuzeti direktorije u Linux Findu
Kada izvršite naredbu 'find', ona pretražuje navedeni direktorij i poddirektorije. Upotrijebite bilo koju od sljedeće tri metode za izuzimanje poddirektorija iz pretraživanja:
1. Opcija orezivanja
Za demonstraciju koristimo linuxhint/ . Vidimo da ima tri poddirektorija kao što je prikazano na sljedećoj slici:
Kada se koristi s -print, opcija “obrezi” pomaže isključiti sve navedene poddirektorije kada radite s naredbom “find”. Na prethodnoj slici možemo upotrijebiti naredbu “find” i dati put do direktorija Linuxhint. Zatim odredite isključivanje dir2 iz rezultata pretraživanja.
Izvršavamo našu naredbu na sljedeći način:
pronađi /home/kyle/Desktop/linuxhint/ -put /home/kyle/Desktop/linuxhint/dir2 -prune -o -printPrimijetite kako se dir2 ne prikazuje nigdje u izlazu što potvrđuje da smo ga uspjeli isključiti.
Također možemo izvršiti istu naredbu u skraćenoj verziji kao što je prikazano u sljedećem:
Također možete isključiti brojne direktorije. Za to koristimo opciju -o. Sljedeći primjer isključuje dir1 i dir3 da bi ostao samo dir2. Ako ste sigurni da datoteka ili mapa koju želite pronaći nije u drugim direktorijima, ova opcija smanjuje izlaz pretraživanja.
2. Preko opcije 'Ne'.
U upitu za traženje moguće je dodati 'not' kako biste odredili koje direktorije treba izuzeti. Njegova je implementacija jednostavnija od opcije obrezivanja.
Evo sintakse koju treba koristiti:
pronađi [put] -tip f -ne -put '*/direktorij-za-isključivanje/*'Pretpostavimo da želimo isključiti dir1 u izlazu pretraživanja 'nađi' koji smo implementirali s opcijom obrezivanja. Naredbu izvršavamo na sljedeći način:
pronaći . -tip f -ne -staza '*/dir2/*'
Dobivamo isti rezultat kao kada koristimo opciju rezanja. Navedeni imenik je isključen; samo preostali poddirektoriji pojavljuju se u rezultatima pretraživanja.
3. Preko '!' Opcija
Posljednji način izuzimanja direktorija u naredbi Linux 'pronađi' je dodavanje '!' operater. Djeluje kao operator 'ne', a sintaksa mu je gotovo identična.
pronađi [put] -tip f ! -staza '*/direktorij-za-isključivanje/*'Pretpostavimo da ponovimo prethodni primjer kako bismo isključili dir2 koristeći '!' operater. I dalje dobivamo isti rezultat. Promijenjen je samo dio naredbe koju koristimo.
To su tri načina za isključivanje direktorija u naredbi Linux 'pronađi'.
Zaključak
Linuxova naredba 'find' zgodna je za brzo lociranje datoteka i mapa. Postaje bolje jer možete isključiti direktorije iz svoje naredbe pretraživanja kako biste smanjili rezultat pretraživanja. Da biste isključili direktorije, možete koristiti 'orezati', 'ne' ili '!' opcije. Ovaj post raspravlja o tome kako tri opcije funkcioniraju s danim primjerima izuzimanja imenika. Isprobaj!