35 praktische Beispiele für den Linux-Suchbefehl
Der Linux-Befehl find ist eines der wichtigsten und am häufigsten verwendeten Befehlszeilenprogramme in Unix-ähnlichen Betriebssystemen. Der Befehl „find“ wird zum Suchen und Suchen einer Liste von Dateien und Verzeichnissen verwendet, basierend auf den von Ihnen angegebenen Bedingungen und den passenden Argumenten.
Der Befehl „find“ bietet eine Vielzahl von Optionen, sodass Benutzer ihn unter verschiedenen Bedingungen nutzen können. Es ermöglicht Einzelpersonen, anhand einer Vielzahl von Kriterien nach Dateien zu suchen, darunter Berechtigungen, Benutzer, Gruppen, Dateitypen, Daten, Größen und verschiedene andere Parameter.
In diesem Artikel stellen wir Ihnen 35 der am häufigsten verwendeten Beispiele für Suchbefehle unter Linux vor. Wir haben diesen Abschnitt in fünf Teile unterteilt, die die Verwendung des Befehls „find“ von der Grundstufe bis zur fortgeschrittenen Ebene abdecken.
Teil I – Grundlegende Suchbefehle zum Suchen von Dateien mit Namen
Wenn es darum geht, Dateien mit bestimmten Namen zu finden, bietet der Befehl „find“ eine Reihe von Optionen, um den Prozess zu optimieren. Hier sind einige grundlegende Suchbefehle zum Auffinden von Dateien anhand ihres Namens.
1. Suchen Sie Dateien anhand des Namens im aktuellen Verzeichnis
Suchen Sie alle Dateien mit dem Namen tecmint.txt in einem aktuellen Arbeitsverzeichnis.
find . -name tecmint.txt
./tecmint.txt
2. Suchen Sie nach Dateien im Home-Verzeichnis
Suchen Sie alle Dateien im Verzeichnis /home mit dem Namen tecmint.txt.
find /home -name tecmint.txt
/home/tecmint.txt
3. Suchen Sie nach Dateien, indem Sie den Namen verwenden und die Groß-/Kleinschreibung ignorieren
Suchen Sie im Verzeichnis /home nach allen Dateien, deren Name tecmint.txt ist und sowohl Groß- als auch Kleinbuchstaben enthält.
find /home -iname tecmint.txt
./tecmint.txt
./Tecmint.txt
4. Suchen Sie Verzeichnisse anhand des Namens
Finden Sie alle Verzeichnisse mit dem Namen Tecmint im Verzeichnis /.
find / -type d -name Tecmint
/Tecmint
5. Suchen Sie PHP-Dateien anhand des Namens
Finden Sie alle php-Dateien mit dem Namen tecmint.php in einem aktuellen Arbeitsverzeichnis.
find . -type f -name tecmint.php
./tecmint.php
6. Suchen Sie alle PHP-Dateien im Verzeichnis
Finden Sie alle php-Dateien in einem Verzeichnis.
find . -type f -name "*.php"
./tecmint.php
./login.php
./index.php
Teil II – Dateien anhand ihrer Berechtigungen finden
Hier sind einige Beispiele für Suchbefehle zum Suchen von Dateien basierend auf ihren Berechtigungen.
7. Suchen Sie nach Dateien mit 777-Berechtigungen
Suchen Sie alle Dateien mit den Berechtigungen 777.
find . -type f -perm 0777 -print
8. Suchen Sie nach Dateien ohne 777-Berechtigungen
Finden Sie alle Dateien ohne Erlaubnis 777.
find / -type f ! -perm 777
9. Suchen Sie nach SGID-Dateien mit 644-Berechtigungen
Suchen Sie alle SGID-Bit-Dateien, deren Berechtigungen auf 644 eingestellt sind.
find / -perm 2644
10. Finden Sie Sticky Bit-Dateien mit 551 Berechtigungen
Finden Sie alle Sticky Bit-Set-Dateien mit der Berechtigung 551.
find / -perm 1551
11. Suchen Sie nach SUID-Dateien
Finden Sie alle SUID-Set-Dateien.
find / -perm /u=s
12. Suchen Sie nach SGID-Dateien
Finden Sie alle SGID-Set-Dateien.
find / -perm /g=s
13. Suchen Sie nach schreibgeschützten Dateien
Finden Sie alle schreibgeschützten Dateien.
find / -perm /u=r
14. Ausführbare Dateien finden
Finden Sie alle ausführbaren Dateien.
find / -perm /a=x
15. Suchen Sie nach Dateien mit 777-Berechtigungen und ändern Sie sie auf 644
Suchen Sie alle 777-Berechtigungsdateien und verwenden Sie den Befehl chmod, um die Berechtigungen auf 644 festzulegen.
find / -type f -perm 0777 -print -exec chmod 644 {} \;
16. Suchen Sie nach Verzeichnissen mit 777-Berechtigungen und Chmod auf 755
Suchen Sie alle 777-Berechtigungsverzeichnisse und verwenden Sie den Befehl chmod, um die Berechtigungen auf 755 festzulegen.
find / -type d -perm 777 -print -exec chmod 755 {} \;
17. Einzelne Datei suchen und entfernen
Um eine einzelne Datei namens tecmint.txt zu finden und zu entfernen.
find . -type f -name "tecmint.txt" -exec rm -f {} \;
18. Suchen und entfernen Sie mehrere Dateien
Um mehrere Dateien wie .mp3 oder .txt zu finden und zu entfernen, verwenden Sie.
find . -type f -name "*.txt" -exec rm -f {} \;
OR
# find . -type f -name "*.mp3" -exec rm -f {} \;
19. Finden Sie alle leeren Dateien
Um alle leeren Dateien unter einem bestimmten Pfad zu finden.
find /tmp -type f -empty
20. Finden Sie alle leeren Verzeichnisse
Um alle leeren Verzeichnisse unter einem bestimmten Pfad abzulegen.
find /tmp -type d -empty
21. Legen Sie alle versteckten Dateien ab
Um alle versteckten Dateien zu finden, verwenden Sie den folgenden Befehl.
find /tmp -type f -name ".*"
Teil III – Durchsuchen von Dateien basierend auf Eigentümern und Gruppen
Hier sind einige Beispiele für Suchbefehle zum Suchen von Dateien basierend auf Besitzern und Gruppen:
22. Suchen Sie nach einzelnen Dateien basierend auf dem Benutzer
Um alle oder einzelne Dateien mit dem Namen tecmint.txt im Stammverzeichnis / des Eigentümers zu finden.
find / -user root -name tecmint.txt
23. Finden Sie alle Dateien basierend auf dem Benutzer
Um alle Dateien zu finden, die dem Benutzer Tecmint gehören, im Verzeichnis /home.
find /home -user tecmint
24. Finden Sie alle Dateien basierend auf der Gruppe
Um alle Dateien zu finden, die zur Gruppe Entwickler gehören, im Verzeichnis /home.
find /home -group developer
25. Suchen Sie nach bestimmten Benutzerdateien
Um alle .txt-Dateien des Benutzers Tecmint im Verzeichnis /home zu finden.
find /home -user tecmint -iname "*.txt"
Teil IV – Dateien und Verzeichnisse anhand von Datum und Uhrzeit finden
Hier sind einige Beispiele für Suchbefehle zum Auffinden von Dateien und Verzeichnissen basierend auf Datum und Uhrzeit.
26. Finden Sie die in den letzten 50 Tagen geänderten Dateien
Um alle Dateien zu finden, die vor 50 Tagen geändert wurden.
find / -mtime 50
27. Suchen Sie nach den Dateien, auf die in den letzten 50 Tagen zugegriffen wurde
Um alle Dateien zu finden, auf die vor 50 Tagen zugegriffen wurde.
find / -atime 50
28. Finden Sie die in den letzten 50–100 Tagen geänderten Dateien
Um alle Dateien zu finden, die vor mehr als 50 Tagen und weniger als 100 Tagen geändert wurden.
find / -mtime +50 –mtime -100
29. In der letzten Stunde geänderte Dateien finden
Um alle Dateien zu finden, die in der letzten 1 Stunde geändert wurden.
find / -cmin -60
30. Finden Sie in der letzten Stunde geänderte Dateien
Um alle Dateien zu finden, die in der letzten 1 Stunde geändert wurden.
find / -mmin -60
31. Suchen Sie nach Dateien, auf die in der letzten Stunde zugegriffen wurde
Um alle Dateien zu finden, auf die in der letzten 1 Stunde zugegriffen wurde.
find / -amin -60
Teil V – Dateien und Verzeichnisse anhand der Größe finden
Hier sind einige Beispiele für Suchbefehle zum Auffinden von Dateien und Verzeichnissen basierend auf der Größe.
32. Suchen Sie nach 50-MB-Dateien
Um alle 50 MB-Dateien zu finden, verwenden Sie.
find / -size 50M
33. Finden Sie eine Größe zwischen 50 MB und 100 MB
Um alle Dateien zu finden, die größer als 50 MB und kleiner als 100 MB sind.
find / -size +50M -size -100M
34. Suchen und löschen Sie 100-MB-Dateien
Um alle 100 MB-Dateien zu finden und sie mit einem einzigen Befehl zu löschen.
find / -type f -size +100M -exec rm -f {} \;
35. Suchen Sie nach bestimmten Dateien und löschen Sie sie
Finden Sie alle .mp3-Dateien mit mehr als 10 MB und löschen Sie sie mit einem einzigen Befehl.
find / -type f -name *.mp3 -size +10M -exec rm {} \;
Das ist alles. Wir beenden diesen Beitrag hier. In unserem nächsten Artikel werden wir andere Linux-Befehle ausführlich anhand praktischer Beispiele besprechen. Teilen Sie uns Ihre Meinung zu diesem Artikel über unseren Kommentarbereich mit.