GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Suchen von Dateien in der Befehlszeile (How To)

Leider ist unter Linux, insbesondere Ubuntu, die Standard-GUI-Dateisuche nicht die nützlichste Methode, um Dateien zu finden.

Mit nur ein wenig Geduld können Sie Dateien schnell und einfach über die Befehlszeile finden, und Ihre Optionen dafür sind wirklich mächtig, wenn Sie ein wenig darüber lernen möchten.

Suchen

Der einfache, schnelle Befehl heißt „locate“. Um diesen Befehl am Terminal zu verwenden, geben Sie einfach ein:

$ locate -i searchstring

Dadurch wird nach allen Dateien und Verzeichnissen mit „searchstring“ im Namen und -i gesucht bedeutet, dass bei der Suche nicht zwischen Groß- und Kleinschreibung unterschieden wird (d. h. es werden Suchzeichenfolge, Suchzeichenfolge, SEaRcHsTrinG usw. gefunden).

Die Ergebnisse sind sofort verfügbar, da das System eine Datenbank (auch als Index bezeichnet) erstellt hat, die Ihnen mitteilt, wo sich Dateien befinden. Das einzige Problem ist, dass neu erstellte oder verschobene Dateien möglicherweise bis zum nächsten Datenbank-Update nicht korrekt gefunden werden und Sie nicht viele Optionen für Ihre Suche auswählen können.

Das Erzwingen, dass die Datenbank/der Index aktualisiert wird, erfolgt mit sudo updatedb   und es nimmt nicht viel Zeit in Anspruch.

Beispiel:

$ locate -i omgubuntu.desktop

Suchen

Es gibt einen viel leistungsfähigeren Befehl namens „find“.

Sie können „find“ mitteilen, wo gesucht werden soll, welche Kriterien bei der Suche verwendet werden sollen und welche Maßnahmen ergriffen werden sollen, wenn Sie das Gesuchte gefunden haben.

Die Syntax für „finden“ lautet:

$ find <where to start searching> <search criteria> <actions to take>

Wenn Sie keine Parameter hinzufügen, sucht find standardmäßig im aktuellen Arbeitsverzeichnis (oder „. “), verwendet keine Suchkriterien (zeigt standardmäßig alle Dateien an) und -print (das trotz seines Namens die Ergebnisse auf dem Bildschirm anzeigt oder „druckt“) als einzige Aktion, die durchgeführt werden muss.

Zwei Beispiele:

 $ sudo find / -type f -mmin -10

Dieses Beispiel findet (beginnend im Root-Verzeichnis oder / und durchsucht rekursiv Unterverzeichnisse) alle normalen Dateien (-type f bedeutet normale Dateien, ohne dies findet es normale Dateien + spezielle Dateien + Verzeichnisse), die vor weniger als zehn Minuten geändert wurden (-mmin -10), und zeigt Ihnen dann die Ergebnisse an.

Dies wäre nützlich, wenn Sie wissen, dass Sie kürzlich eine Datei bearbeitet haben, aber nicht wissen, wo Sie sie abgelegt haben, oder wenn Sie eine Protokolldatei für ein abgestürztes Programm finden müssen.

Sie können sudo hinzufügen hier, weil find keine Dateien/Verzeichnisse durchsucht, für die der aktuelle Benutzer keine Berechtigungen hat, und Fehlermeldungen zurückgibt, wenn Sie kein Sudoer sind – seien Sie vorsichtig!

 $ find ~ -iname "*new*" -exec mv -v {} /media/current-projects/ \;

Dies findet alles in Ihrem Home-Verzeichnis (~) mit einem Namen, Groß- und Kleinschreibung (-iname), enthält neu ("*neu*") und führt (-exec) eine Verschiebung (mv) der Ergebnisse ({}) aus /media/current-projects/ ( \; wird von -exec benötigt, um das Ende des auszuführenden Befehls anzuzeigen). Alle Ihre Dateien werden also an denselben Ort verschoben. mv -v zeigt die Ergebnisse des Move-Befehls mit (-v)erbose Meldungen an.

Eine weitere Warnung mit -exec, obwohl es mächtig ist, wenn es unvorsichtig verwendet wird, können Sie Ihr gesamtes Home-Verzeichnis oder die gesamte Festplatte überschreiben – seien Sie also vorsichtig!

Catfish ist eine GUI-Option

Wer auf eine GUI nicht verzichten kann, findet in den Repositories das Programm Catfish – damit kann man sowohl locate ausführen und find von einem grafischen Frontend, aber die Optionen sind sehr begrenzt.

Stellen Sie sich Catfish als Äquivalent zur Windows-Suche vor. Wenn Sie die volle Leistungsfähigkeit von find nutzen möchten, müssen Sie es über die Befehlszeile ausführen, indem Sie die obigen Kurztipps verwenden.

Installieren Sie Catfish von Ubuntu Software

Welche Methode bevorzugen Sie für die Dateisuche? Antworten Sie unten und ich werde $ grep Nixie * es später.;-)


Ubuntu
  1. So finden Sie Dateien in CentOS 8 in der Befehlszeile

  2. Wie erhalte ich eine Anzahl von Dateien in einem Verzeichnis über die Befehlszeile?

  3. Wie kann man von der Befehlszeile aus stummschalten?

  4. Wie finde ich alle Dateien, die sich auf eine Software beziehen?

  5. Wie lade ich Dateien von der Befehlszeile mit dem Befehl wget herunter?

So finden Sie Dateien mit dem fd-Befehl in Linux

Finden Sie die Befehlszeile?

So finden Sie die IP-Adresse in der Linux-Befehlszeile

Die größten Dateien und Ordner in der Linux-Befehlszeile finden

So finden Sie Ordner in Linux

Wie finde ich die platzraubendsten Verzeichnisse oder Dateien heraus?