So finden Sie eine Datei unter Linux mit dem Befehl „Suchen“.
Der Linux-Suchbefehl ist einer der wichtigsten und praktischsten Befehle in Linux-Systemen. Es kann, wie der Name schon sagt, Dateien auf Ihrem Linux-PC basierend auf nahezu den von Ihnen festgelegten Bedingungen und Variablen finden. Mit dem Befehl „Suchen“ können Sie Dateien nach Berechtigungen, Benutzern, Gruppen, Dateityp, Datum, Größe und anderen möglichen Kriterien suchen. Hier zeigen wir Ihnen, wie Sie mit dem Befehl „find“ eine Datei unter Linux finden.
Der Befehl „find“ ist in den meisten Linux-Distributionen standardmäßig verfügbar, Sie müssen also kein Paket dafür installieren.
Lesen Sie auch: Verwenden Sie die Befehle „find“, „locate“, „which“ und „whereis“, um unter Linux nach Dateien zu suchen
Suchen Sie Dateien nach Namen in aktuellen Verzeichnissen
Die naheliegendste Art, nach Dateien zu suchen, ist die Namenssuche. Führen Sie Folgendes aus, um eine Datei anhand ihres Namens im aktuellen Verzeichnis zu finden:
Wenn Sie eine Datei anhand ihres Namens suchen möchten, der sowohl Groß- als auch Kleinbuchstaben enthält, führen Sie Folgendes aus:
Wenn Sie eine Datei im Stammverzeichnis finden möchten, stellen Sie Ihrer Suche „sudo“ voran, wodurch Sie alle dafür erforderlichen Berechtigungen erhalten, sowie das /-Symbol, das Linux anweist, im Stammverzeichnis zu suchen. Schließlich zeigt der Ausdruck -print die Verzeichnisse Ihrer Suchergebnisse an. Wenn Sie nach Gzip suchen würden, würden Sie Folgendes eingeben:
sudo find / -name gzip -printLesen Sie auch: So finden Sie große Dateien unter Linux
Suchen Sie nach Dateien in einem bestimmten Verzeichnis
Wenn Sie Dateien in einem bestimmten Verzeichnis wie „/home“ finden möchten, führen Sie Folgendes aus:
Finden Sie /home -name Dateiname.txtWenn Sie Dateien mit der Erweiterung „.txt“ im Verzeichnis „/home“ finden möchten, führen Sie Folgendes aus:
Um Dateien mit dem Namen „test.txt“ in mehreren Verzeichnissen wie „/home“ und „/opt“ zu finden, führen Sie Folgendes aus:
Finden Sie /home /opt -name test.txtUm versteckte Dateien im Verzeichnis „/home“ zu finden, führen Sie Folgendes aus:
Führen Sie Folgendes aus, um eine einzelne Datei namens „test.txt“ zu finden und zu entfernen:
find /home -type f -name test.txt -exec rm -f {}Um alle leeren Dateien im Verzeichnis „/opt“ zu finden, führen Sie Folgendes aus:
Finden Sie Verzeichnisse anhand des Namens
Wenn Sie alle Verzeichnisse mit dem Namen „testdir“ im Verzeichnis „/home“ finden möchten, führen Sie Folgendes aus:
finde /home -type d -name testdirUm alle leeren Verzeichnisse unter „/home“ abzulegen, führen Sie Folgendes aus:
finde /home -type d -emptySuchen Sie nach Dateien mit bestimmten Berechtigungen
Der Befehl „find“ kann verwendet werden, um mithilfe der Option „perm“ nach Dateien mit einer bestimmten Berechtigung zu suchen.
Um alle Dateien mit der Berechtigung „777“ im Verzeichnis „/home“ zu finden, führen Sie Folgendes aus:
find /home -type f -perm 0777 -printUm alle Dateien ohne die Berechtigung „777“ zu finden, führen Sie Folgendes aus:
finden . -typ f ! -perm 777Um alle schreibgeschützten Dateien zu finden, führen Sie Folgendes aus:
Um alle ausführbaren Dateien zu finden, führen Sie Folgendes aus:
Um alle Sticky-Bit-Set-Dateien zu finden, deren Berechtigungen „553“ sind, führen Sie Folgendes aus:
Um alle SUID-Set-Dateien zu finden, führen Sie Folgendes aus:
Um alle Dateien zu finden, deren Berechtigungen „777“ sind, und ihre Berechtigungen auf „700“ zu ändern, führen Sie Folgendes aus:
find /home -type f -perm 0777 -print -exec chmod 700 {} ;Suchen Sie Dateien und Verzeichnisse basierend auf Datum und Uhrzeit
Um alle Dateien unter „/opt“ zu finden, die 20 Tage zuvor geändert wurden, führen Sie Folgendes aus:
Um alle Dateien unter „/opt“ zu finden, auf die zwanzig Tage zuvor zugegriffen wurde, führen Sie Folgendes aus:
So finden Sie alle Dateien unter „/opt“, die mehr als 30 Tage zuvor und weniger als 50 Tage danach geändert wurden:
find /opt -mtime +30 -mtime -50Um alle Dateien unter „/opt“ zu finden, die in den letzten zwei Stunden geändert wurden, führen Sie Folgendes aus:
Suchen Sie Dateien und Verzeichnisse basierend auf ihrer Größe
Führen Sie Folgendes aus, um alle 10-MB-Dateien im Verzeichnis „/home“ zu finden:
Führen Sie Folgendes aus, um alle Dateien im Verzeichnis „/home“ zu finden, die größer als 10 MB und kleiner als 50 MB sind:
find /home -size +10M -size -50MUm alle „.mp4“-Dateien mit mehr als 10 MB im Verzeichnis „/home“ zu finden und sie mit einem einzigen Befehl zu löschen, führen Sie Folgendes aus:
find /home -type f -name *.mp4 -size +10M -exec rm {} ;Wie Sie sehen, ist der Befehl „find“ unglaublich nützlich für die Verwaltung eines Systems, das Durchsuchen von Verzeichnissen nach Dateien und allgemein das Bereinigen des virtuellen Verzeichnisbaums unter Linux. Wenn Ihnen dieser Linux-Artikel gefallen hat, schauen Sie sich unbedingt einige unserer anderen Linux-Inhalte an, z. B. wie Sie den scp-Befehl zum sicheren Übertragen von Dateien verwenden, wie Sie nnn als Dateimanager im Terminal verwenden und wie Sie defekte Pakete reparieren.
Index
- Suchen Sie Dateien nach Namen in aktuellen Verzeichnissen
- Suchen Sie nach Dateien in einem bestimmten Verzeichnis
- Finden Sie Verzeichnisse anhand des Namens
- Suchen Sie nach Dateien mit bestimmten Berechtigungen
- Suchen Sie Dateien und Verzeichnisse basierend auf Datum und Uhrzeit
- Suchen Sie Dateien und Verzeichnisse basierend auf ihrer Größe
Schreibe einen Kommentar