35 praktičnih primjera naredbe Find u Linuxu
Linux naredba pronalaženja jedan je od najvažnijih i najčešće korištenih uslužnih programa naredbenog retka u operativnim sustavima sličnim Unixu. Naredba find koristi se za traženje i lociranje popisa datoteka i direktorija na temelju uvjeta koje navedete, podudarajući se s argumentima.
Naredba find pruža široku lepezu opcija, omogućujući korisnicima da je iskoriste u različitim uvjetima. Omogućuje pojedincima da traže datoteke na temelju mnoštva kriterija, uključujući dopuštenja, korisnike, grupe, vrste datoteka, datume, veličine i razne druge parametre.
U ovom članku ćemo vam predstaviti 35 najčešće korištenih primjera naredbi Find u Linuxu. Podijelili smo ovaj odjeljak u pet dijelova koji pokrivaju korištenje naredbe find od osnovne do napredne razine.
Dio I – Osnovne naredbe traženja za pronalaženje datoteka s nazivima
Kada je riječ o pronalaženju datoteka s određenim nazivima, naredba find nudi niz opcija za pojednostavljenje procesa. Evo nekih osnovnih naredbi traženja za lociranje datoteka na temelju njihovih naziva.
1. Pronađite datoteke koristeći naziv u trenutnom direktoriju
Pronađite sve datoteke čije je ime tecmint.txt u trenutnom radnom direktoriju.
find . -name tecmint.txt
./tecmint.txt
2. Pronađite datoteke u početnom direktoriju
Pronađite sve datoteke u direktoriju /home pod nazivom tecmint.txt.
find /home -name tecmint.txt
/home/tecmint.txt
3. Pronađite datoteke pomoću imena i zanemarivanja velikih i malih slova
Pronađite sve datoteke čije je ime tecmint.txt i sadrži velika i mala slova u direktoriju /home.
find /home -iname tecmint.txt
./tecmint.txt
./Tecmint.txt
4. Pronađite imenike pomoću imena
Pronađite sve direktorije čije je ime Tecmint u direktoriju /.
find / -type d -name Tecmint
/Tecmint
5. Pronađite PHP datoteke koristeći naziv
Pronađite sve php datoteke čije je ime tecmint.php u trenutnom radnom direktoriju.
find . -type f -name tecmint.php
./tecmint.php
6. Pronađite sve PHP datoteke u imeniku
Pronađite sve php datoteke u direktoriju.
find . -type f -name "*.php"
./tecmint.php
./login.php
./index.php
Dio II – Pronađite datoteke na temelju njihovih dozvola
Evo nekoliko primjera naredbi traženja za pronalaženje datoteka na temelju njihovih dozvola.
7. Pronađite datoteke s dopuštenjima 777
Pronađite sve datoteke čija su dopuštenja 777.
find . -type f -perm 0777 -print
8. Pronađite datoteke bez 777 dopuštenja
Pronađite sve datoteke bez dopuštenja 777.
find / -type f ! -perm 777
9. Pronađite SGID datoteke s 644 dopuštenja
Pronađite sve datoteke SGID bit čija su dopuštenja postavljena na 644.
find / -perm 2644
10. Pronađite Sticky Bit datoteke s dopuštenjima 551
Pronađite sve datoteke skupa Sticky Bit čija je dozvola 551.
find / -perm 1551
11. Pronađite SUID datoteke
Pronađite sve SUID postavljene datoteke.
find / -perm /u=s
12. Pronađite SGID datoteke
Pronađite sve SGID postavljene datoteke.
find / -perm /g=s
13. Pronađite datoteke samo za čitanje
Pronađite sve datoteke samo za čitanje.
find / -perm /u=r
14. Pronađite izvršne datoteke
Pronađite sve izvršne datoteke.
find / -perm /a=x
15. Pronađite datoteke s dopuštenjima 777 i Chmod na 644
Pronađite sve 777 datoteke dopuštenja i upotrijebite naredbu chmod da postavite dopuštenja na 644.
find / -type f -perm 0777 -print -exec chmod 644 {} \;
16. Pronađite direktorije s dopuštenjima 777 i Chmod do 755
Pronađite sve 777 direktorije dopuštenja i upotrijebite naredbu chmod da postavite dopuštenja na 755.
find / -type d -perm 777 -print -exec chmod 755 {} \;
17. Pronađite i uklonite jednu datoteku
Da biste pronašli jednu datoteku pod nazivom tecmint.txt i uklonili je.
find . -type f -name "tecmint.txt" -exec rm -f {} \;
18. Pronađite i uklonite više datoteka
Da biste pronašli i uklonili više datoteka kao što su .mp3 ili .txt, upotrijebite.
find . -type f -name "*.txt" -exec rm -f {} \;
OR
# find . -type f -name "*.mp3" -exec rm -f {} \;
19. Pronađite sve prazne datoteke
Da biste pronašli sve prazne datoteke pod određenom putanjom.
find /tmp -type f -empty
20. Pronađite sve prazne direktorije
Za arhiviranje svih praznih direktorija pod određenom stazom.
find /tmp -type d -empty
21. Snimite sve skrivene datoteke
Da biste pronašli sve skrivene datoteke, upotrijebite naredbu ispod.
find /tmp -type f -name ".*"
Dio III – Pretraživanje datoteka na temelju vlasnika i grupa
Evo nekoliko primjera naredbi traženja za pronalaženje datoteka na temelju vlasnika i grupa:
22. Pronađite jednu datoteku na temelju korisnika
Za pronalaženje svih ili pojedinačnih datoteka pod nazivom tecmint.txt u / korijenskom direktoriju vlasnika root.
find / -user root -name tecmint.txt
23. Pronađite sve datoteke na temelju korisnika
Da biste pronašli sve datoteke koje pripadaju korisniku Tecmint u direktoriju /home.
find /home -user tecmint
24. Pronađite sve datoteke na temelju grupe
Da biste pronašli sve datoteke koje pripadaju grupi Developer u direktoriju /home.
find /home -group developer
25. Pronađite određene datoteke korisnika
Da biste pronašli sve .txt datoteke korisnika Tecmint u direktoriju /home.
find /home -user tecmint -iname "*.txt"
Dio IV – Pronađite datoteke i direktorije na temelju datuma i vremena
Evo nekoliko primjera naredbi traženja za lociranje datoteka i direktorija na temelju datuma i vremena.
26. Pronađite datoteke izmijenjene u zadnjih 50 dana
Da biste pronašli sve datoteke koje su modificirane unatrag 50 dana.
find / -mtime 50
27. Pronađite datoteke kojima ste pristupali zadnjih 50 dana
Za pronalaženje svih datoteka kojima se pristupilo unazad 50 dana.
find / -atime 50
28. Pronađite datoteke izmijenjene zadnjih 50-100 dana
Za pronalaženje svih datoteka koje su izmijenjene unatrag više od 50 dana i manje od 100 dana.
find / -mtime +50 –mtime -100
29. Pronađite promijenjene datoteke u zadnjih 1 sat
Da biste pronašli sve datoteke koje su promijenjene u zadnjih 1 sat.
find / -cmin -60
30. Pronađite izmijenjene datoteke u zadnjih 1 sat
Da biste pronašli sve datoteke koje su izmijenjene u zadnjih 1 sat.
find / -mmin -60
31. Pronađite pristupljene datoteke u zadnjih 1 sat
Da biste pronašli sve datoteke kojima ste pristupili u posljednjih 1 sat.
find / -amin -60
Dio V – Pronađite datoteke i direktorije na temelju veličine
Evo nekoliko primjera naredbi traženja za lociranje datoteka i direktorija na temelju veličine.
32. Pronađite datoteke od 50 MB
Da biste pronašli sve 50MB datoteke, koristite.
find / -size 50M
33. Pronađite veličinu između 50MB – 100MB
Za pronalaženje svih datoteka koje su veće od 50MB i manje od 100MB.
find / -size +50M -size -100M
34. Pronađite i izbrišite datoteke od 100 MB
Za pronalaženje svih 100MB datoteka i njihovo brisanje pomoću jedne naredbe.
find / -type f -size +100M -exec rm -f {} \;
35. Pronađite određene datoteke i izbrišite
Pronađite sve .mp3 datoteke s više od 10 MB i izbrišite ih pomoću jedne naredbe.
find / -type f -name *.mp3 -size +10M -exec rm {} \;
To je to, ovdje završavamo ovaj post, u našem sljedećem članku ćemo detaljno raspravljati o drugim Linux naredbama s praktičnim primjerima. Recite nam svoje mišljenje o ovom članku koristeći naš odjeljak za komentare.