Alternative Methoden zur Dateisuche im Linux-Terminal
Viele Linux-Benutzer verlassen sich zur Dateisuche auf den Dateimanager. Zwar sind die Suchfunktionen dort hilfreich, jedoch oft langsam und nicht immer präzise. Für eine effizientere Suche empfiehlt sich der Einsatz des Terminals.
Hinweis: Am Ende dieses Artikels finden Sie ein Video-Tutorial, das die hier beschriebenen Methoden veranschaulicht.
Dieser Artikel zeigt, wie Sie Dateien und Ordner im Linux-Terminal schnell und effektiv finden können.
1. Die Kombination aus „find“ und „grep“
Das Kommando „find“ ist ein vielseitiges Werkzeug, um Dateien auf dem Linux-System zu suchen. Es durchsucht das System anhand von Stichwörtern. Um es zu verwenden, öffnen Sie das Terminal und geben Sie „find“ ein. Sie werden feststellen, dass es fast jede Datei auflistet. Obwohl es umfangreich sucht, wird es schwierig, die gewünschten Ergebnisse zu finden.
Für eine zielgerichtete Suche kombinieren Sie „find“ mit „grep“. „grep“ ermöglicht das Filtern nach bestimmten Stichwörtern. Diese Kombination ist sehr effektiv. Um beispielsweise alle Dateien oder Ordner mit dem Begriff „Bitcoin“ zu finden, verwenden Sie:
find | grep bitcoin
Dadurch werden nur Ergebnisse angezeigt, die das Wort „bitcoin“ enthalten. Diese Methode ist auch für bestimmte Dateiendungen geeignet. Um alle PNG-Dateien auf dem System zu finden, verwenden Sie:
find | grep .png
Die Ergebnisliste kann sehr lang sein. Um sie besser zu handhaben, können Sie „more“ hinzufügen:
find | grep .png | more
2. „mlocate“ für schnelle Suchen
„mlocate“ ist ein weiteres nützliches Suchwerkzeug, das oft benutzerfreundlicher als „find“ ist. Es ist besser in der Stichwortsuche, ohne zusätzliche Befehle wie „grep“. Allerdings ist „mlocate“ nicht auf allen Linux-Systemen standardmäßig installiert. Hier sind Installationsbefehle für verschiedene Distributionen:
Ubuntu
sudo apt install mlocate
Debian
sudo apt-get install mlocate
Arch Linux
sudo pacman -S mlocate
Fedora
sudo dnf install mlocate
OpenSUSE
sudo zypper install mlocate
Nach der Installation muss eine Datenbank erstellt werden. Dies geschieht mit dem Befehl „updatedb“. Beachten Sie, dass dieser Befehl als Root ausgeführt werden muss, da er das gesamte System durchsucht:
sudo updatedb
Die Erstellung der Datenbank kann einige Zeit dauern, abhängig von der Größe Ihres Systems und der Geschwindigkeit der Festplatte. Warten Sie, bis das Terminal wieder Eingaben annimmt. Um „mlocate“ zu nutzen, geben Sie den Dateinamen, das Stichwort oder die Dateiendung nach dem Befehl ein:
locate Dateiname
oder
locate Stichwort
oder
locate "*.Dateiendung"
Um die Ergebnisse in einer Textdatei zu speichern, verwenden Sie:
locate Stichwort >> locate-stichwort-results.txt
Filtern der „mlocate“-Ergebnisse
Um die gespeicherten Ergebnisse weiter zu filtern, können Sie „cat“ und „grep“ kombinieren. Zum Beispiel, um alle MP3-Dateien in einer Textdatei zu finden:
cat locate-mp3-results.txt | grep "mp3 Stichwort"
3. „ls“ in Kombination mit „grep“
Eine weitere Methode ist die Verwendung des Befehls „ls“ (list). „ls“ listet alle Elemente in einem Verzeichnis auf und ist nützlich zur Suche in einem bestimmten Ordner. Für eine effizientere Suche wird „ls“ mit „grep“ kombiniert. Zuerst navigieren Sie mit „cd“ in den gewünschten Ordner.
Dann verwenden Sie „ls“ und „grep“:
ls | grep Stichwort
Um auch versteckte Ordner anzuzeigen, verwenden Sie:
ls -a | grep Stichwort