polecenie Znajdź Linuksa jest jednym z najważniejszych i najczęściej używanych poleceń w systemach operacyjnych typu Unix. Polecenie Find służy do wyszukiwania i lokalizowania listy plików i katalogów w oparciu o warunki określone dla plików pasujących do argumentów.
Find może być używany w różnych warunkach, takich jak wyszukiwanie plików według uprawnień, użytkowników, grup, typu pliku, daty, rozmiaru i innych możliwych kryteriów.,
w tym artykule dzielimy się naszym codziennym doświadczeniem z poleceniami Linux find i ich wykorzystaniem w formie przykładów.
w tym artykule pokażemy najczęściej używane 35 przykładów poleceń Find w Linuksie. Podzieliliśmy sekcję na pięć części od podstawowego do zaawansowanego użycia polecenia Znajdź.,
- część i: podstawowe polecenia wyszukiwania do wyszukiwania plików o nazwach
- Część II: wyszukiwanie plików na podstawie ich uprawnień
- Część III: wyszukiwanie plików na podstawie właścicieli i grup
- Część IV: wyszukiwanie plików i katalogów na podstawie daty i czasu
- Część V: wyszukiwanie plików i katalogów na podstawie rozmiaru
- Część VI: Wyszukiwanie wielu nazw plików w Linuksie
1. Znajdź pliki używające nazwy w bieżącym katalogu
Znajdź wszystkie pliki, których nazwa to tecmint.txt w bieżącym katalogu roboczym.,
# find . -name tecmint.txt./tecmint.txt
2. Znajdź pliki w katalogu głównym
Znajdź wszystkie pliki w katalogu /home o nazwie tecmint.txt.
# find /home -name tecmint.txt/home/tecmint.txt
3. Znajdź pliki używając nazwy i ignorując wielkość liter
Znajdź wszystkie pliki, których nazwa to tecmint.txt i zawiera zarówno duże jak i małe litery w katalogu / home.
# find /home -iname tecmint.txt./tecmint.txt./Tecmint.txt
4. Znajdź katalogi używając nazwy
Znajdź wszystkie katalogi, których nazwa jest Tecmint w katalogu/.
# find / -type d -name Tecmint/Tecmint
5., Znajdź pliki PHP używając nazwy
Znajdź wszystkie pliki php o nazwie tecmint.php w bieżącym katalogu roboczym.
6. Znajdź wszystkie pliki PHP w katalogu
Znajdź wszystkie pliki php w katalogu.
# find . -type f -name "*.php"./tecmint.php./login.php./index.php
7. Find Files With 777 Permissions
Find all the files whose permissions are 777.
# find . -type f -perm 0777 -print
8. Find Files Without 777 Permissions
Find all the files Without 777 Permissions.
# find / -type f ! -perm 777
9., Znajdź pliki SGID z uprawnieniami 644
Znajdź wszystkie pliki bitów SGID, których uprawnienia ustawiono na 644.
# find / -perm 2644
10. Find Sticky bit Files with 551 Permissions
Find all the Sticky Bit Set files whose permission are 551.
# find / -perm 1551
11. Znajdź pliki SUID
Znajdź wszystkie pliki Suid.
# find / -perm /u=s
12. Znajdź pliki SGID
Znajdź wszystkie pliki SGID.
# find / -perm /g=s
13. Znajdź pliki tylko do odczytu
Znajdź wszystkie pliki tylko do odczytu.
# find / -perm /u=r
14., Znajdź pliki wykonywalne
Znajdź wszystkie pliki wykonywalne.
# find / -perm /a=x
15. Znajdź pliki z uprawnieniami 777 i Chmod do 644
Znajdź wszystkie pliki uprawnień 777 i użyj polecenia chmod, aby ustawić uprawnienia na 644.
# find / -type f -perm 0777 -print -exec chmod 644 {} \;
16. Znajdź katalogi z uprawnieniami 777 i Chmod do 755
Znajdź wszystkie katalogi z uprawnieniami 777 i użyj polecenia chmod, aby ustawić uprawnienia na 755.
# find / -type d -perm 777 -print -exec chmod 755 {} \;
17. Znajdź i usuń pojedynczy plik
, aby znaleźć pojedynczy plik o nazwie tecmint.txt i usuń go.
# find . -type f -name "tecmint.txt" -exec rm -f {} \;
18., Znajdź i usuń wiele plików
aby znaleźć i usunąć wiele plików, takich jak .mp3 lub .txt, następnie użyj.
# find . -type f -name "*.txt" -exec rm -f {} \;OR# find . -type f -name "*.mp3" -exec rm -f {} \;
19. Znajdź wszystkie puste pliki
, aby znaleźć wszystkie puste pliki pod określoną ścieżką.
# find /tmp -type f -empty
20. Znajdź wszystkie puste katalogi
aby zapisać wszystkie puste katalogi pod określoną ścieżką.
# find /tmp -type d -empty
21. Plik wszystkie ukryte pliki
aby znaleźć wszystkie ukryte pliki, użyj poniższego polecenia.
# find /tmp -type f -name ".*"
22., Znajdź pojedynczy plik na podstawie użytkownika
, aby znaleźć cały lub pojedynczy plik o nazwie tecmint.txt w katalogu / root właściciela roota.
# find / -user root -name tecmint.txt
23. Find all Files Based on User
to find all files that belong to user Tecmint under / home directory.
# find /home -user tecmint
24. Znajdź wszystkie pliki z grupy
aby znaleźć wszystkie pliki należące do grupy Developer w katalogu / home.
# find /home -group developer
25. Znajdź poszczególne pliki użytkownika
aby znaleźć wszystkie .pliki txt użytkownika Tecmint w katalogu / home.,
# find /home -user tecmint -iname "*.txt"
26. Find last 50 Days Modified Files
to find all the files which are modified 50 days back.
# find / -mtime 50
27. Znajdź pliki z ostatnich 50 dni, do których uzyskano dostęp
, aby znaleźć wszystkie pliki, do których uzyskano dostęp 50 dni wstecz.
# find / -atime 50
28. Find Last 50-100 Days Modified Files
to find all the files which are modified more than 50 days back and less than 100 days.
# find / -mtime +50 –mtime -100
29., Znajdź zmienione pliki w ciągu ostatniej 1 godziny
aby znaleźć wszystkie pliki, które zostały zmienione w ciągu ostatniej 1 godziny.
# find / -cmin -60
30. Znajdź zmodyfikowane pliki w ciągu ostatnich 1 godzin
aby znaleźć wszystkie pliki, które zostały zmodyfikowane w ciągu ostatnich 1 godzin.
# find / -mmin -60
31. Znajdź dostępne pliki w ciągu ostatniej 1 godziny
aby znaleźć wszystkie pliki, do których uzyskano dostęp w ciągu ostatniej 1 godziny.
# find / -amin -60
32. Znajdź pliki 50MB
aby znaleźć wszystkie pliki 50MB, użyj.
# find / -size 50M
33., Znajdź Rozmiar pomiędzy 50MB – 100MB
aby znaleźć wszystkie pliki, które są większe niż 50MB i mniej niż 100MB.
# find / -size +50M -size -100M
34. Znajdź i usuń pliki 100MB
aby znaleźć wszystkie pliki 100MB i usunąć je za pomocą jednego polecenia.
# find / -type f -size +100M -exec rm -f {} \;
35. Znajdź określone pliki i usuń
Znajdź wszystkie pliki .mp3 z więcej niż 10MB i usuń je za pomocą jednego polecenia.
# find / -type f -name *.mp3 -size +10M -exec rm {} \;