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.