35 практически примера за Linux Find Command

Сподели

Linux намери команда е една от най-важните и често използвани помощни програми за команден ред в Unix-подобни операционни системи. Командата find се използва за търсене и намиране на списък с файлове и директории въз основа на зададените от вас условия, съответстващи на аргументите.

Командата find предоставя широк набор от опции, позволяващи на потребителите да я използват в различни условия. Той дава възможност на хората да търсят файлове въз основа на множество критерии, включително разрешения, потребители, групи, типове файлове, дати, размери и различни други параметри.

В тази статия ще ви представим 35 от най-често използваните примери за намиране на команди в Linux. Разделихме този раздел на пет части, обхващащи използването на командата find от основни до напреднали нива.

Част I – Основни команди за намиране на файлове с имена

Когато става въпрос за намиране на файлове с конкретни имена, командата find предлага набор от опции за рационализиране на процеса. Ето някои основни команди за намиране на файлове въз основа на техните имена.

1. Намерете файлове, използвайки име в текущата директория

Намерете всички файлове, чието име е tecmint.txt в текуща работна директория.

# find . -name tecmint.txt

./tecmint.txt

2. Намерете файлове в началната директория

Намерете всички файлове под /У дома директория с името tecmint.txt.

# find /home -name tecmint.txt

/home/tecmint.txt

3. Намерете файлове с помощта на име и пренебрегване на главни и малки букви

Намерете всички файлове, чието име е tecmint.txt и съдържа главни и малки букви /У дома указател.

# find /home -iname tecmint.txt

./tecmint.txt
./Tecmint.txt

4. Намерете директории с помощта на име

Намерете всички директории, чието име е Tecmint в / указател.

# find / -type d -name Tecmint

/Tecmint

5. Намерете PHP файлове с помощта на име

Намерете всички php файлове, чието име е tecmint.php в текуща работна директория.

# find . -type f -name tecmint.php

./tecmint.php

6. Намерете всички PHP файлове в директорията

Намерете всички php файлове в директория.

# find . -type f -name "*.php"

./tecmint.php
./login.php
./index.php

Част II – Намерете файлове въз основа на техните разрешения

Ето няколко примера за команди за търсене за намиране на файлове въз основа на техните разрешения.

7. Намерете файлове с 777 разрешения

Намерете всички файлове, чиито разрешения са 777.

# find . -type f -perm 0777 -print

8. Намерете файлове без 777 разрешения

Намерете всички файлове без разрешение 777.

# find / -type f ! -perm 777

9. Намерете SGID файлове с 644 разрешения

Намерете всички SKID бит файлове, чиито разрешения са зададени на 644.

# find / -perm 2644

10. Намерете Sticky Bit Files с 551 разрешения

Намерете всички Sticky Bit задайте файлове, чието разрешение е 551.

# find / -perm 1551

11. Намерете SUID файлове

Намерете всички ЮГ задайте файлове.

# find / -perm /u=s

12. Намерете SGID файлове

Намерете всички ОБУВКА задайте файлове.

# find / -perm /g=s

13. Намерете файлове само за четене

Намерете всички Само за четене файлове.

# find / -perm /u=r

14. Намерете изпълними файлове

Намерете всички Изпълним файл файлове.

# find / -perm /a=x

15. Намерете файлове с разрешения 777 и Chmod до 644

Намерете всички 777 файлове с разрешения и използвайте chmod команда за задаване на разрешения 644.

# find / -type f -perm 0777 -print -exec chmod 644 {} \;

16. Намерете директории с 777 разрешения и Chmod до 755

Намерете всички 777 директории с разрешения и използвайте chmod команда за задаване на разрешения 755.

# find / -type d -perm 777 -print -exec chmod 755 {} \;

17. Намерете и премахнете един файл

За да намерите един файл, извикан tecmint.txt и го премахнете.

# find . -type f -name "tecmint.txt" -exec rm -f {} \;

18. Намерете и премахнете Multiple File

За намиране и премахване на множество файлове, като напр .mp3 или .текстслед това използвайте.

# find . -type f -name "*.txt" -exec rm -f {} \;

OR

# find . -type f -name "*.mp3" -exec rm -f {} \;

[ You might also like: 4 Useful Tools to Find and Delete Duplicate Files in Linux ]

19. Намерете всички празни файлове

За да намерите всички празни файлове под определен път.

# find /tmp -type f -empty

20. Намерете всички празни директории

За да архивирате всички празни директории по определен път.

# find /tmp -type d -empty

21. Запишете всички скрити файлове

За да намерите всички скрити файлове, използвайте командата по-долу.

# find /tmp -type f -name ".*"

Част III – Търсене на файлове въз основа на собственици и групи

Ето някои примери за команди за намиране на файлове въз основа на собственици и групи:

22. Намерете един файл въз основа на потребител

За да намерите всички или отделни файлове, извикайте tecmint.txt под / основната директория на собственика root.

# find / -user root -name tecmint.txt

23. Намерете всички файлове на базата на потребител

За да намерите всички файлове, които принадлежат на потребителя Tecmint под /У дома указател.

# find /home -user tecmint

24. Намерете всички файлове на базата на група

За да намерите всички файлове, които принадлежат към групата Разработчик под /У дома указател.

# find /home -group developer

25. Намерете конкретни файлове на потребителя

За да намерите всички .текст файлове на потребителя Tecmint под /У дома указател.

# find /home -user tecmint -iname "*.txt"

Част IV – Намерете файлове и директории въз основа на дата и час

Ето някои примери за команди за намиране на файлове и директории въз основа на дата и час.

26. Намерете последните 50 дни променени файлове

За да намерите всички файлове, които са променени 50 дни назад.

# find / -mtime 50

27. Намерете последните 50 дни достъпни файлове

За намиране на всички файлове, до които има достъп 50 дни назад.

# find / -atime 50

28. Намерете последните 50-100 дни променени файлове

За да намерите всички файлове, които са модифицирани повече от 50 дни назад и по-малко от 100 дни.

# find / -mtime +50 –mtime -100

29. Намерете променени файлове през последния 1 час

За да намерите всички файлове, които са променени в последния Един час.

# find / -cmin -60

30. Намерете модифицирани файлове през последния 1 час

За да намерите всички файлове, които са модифицирани в последния Един час.

# find / -mmin -60

31. Намерете достъпни файлове през последния 1 час

За да намерите всички файлове, които са достъпни в последния Един час.

# find / -amin -60

Част V – Намерете файлове и директории въз основа на размера

Ето някои примери за команди за намиране на файлове и директории въз основа на размера.

32. Намерете 50MB файлове

За да намерите всички 50MB файлове, използвайте.

# find / -size 50M

33. Намерете размер между 50MB – 100MB

За да намерите всички файлове, които са по-големи от 50MB и по-малко от 100MB.

# find / -size +50M -size -100M

34. Намерете и изтрийте 100MB файлове

За да намерите всички 100MB файлове и ги изтрийте с една единствена команда.

# find / -type f -size +100M -exec rm -f {} \;

35. Намерете конкретни файлове и изтрийте

Намерете всички .mp3 файлове с повече от 10MB и ги изтрийте с една единствена команда.

# find / -type f -name *.mp3 -size +10M -exec rm {} \;

Това е всичко. Приключваме тази публикация тук. В следващата ни статия ще обсъдим задълбочено други команди на Linux с практически примери. Кажете ни вашето мнение за тази статия, като използвате нашата секция за коментари.

Публикациите се превеждат автоматично с google translate

Loading


Сподели