Connect with us

Wie man

So finden Sie Dateien und Ordner unter Linux über die Befehlszeile

So finden Sie Dateien und Ordner unter Linux über die Befehlszeile

Die meisten Benutzer verwenden einen grafischen Dateimanager, um Dateien unter Linux zu finden, z. B. Nautilus in Gnome, Dolphin in KDE und Thunar in Xfce. Es gibt jedoch verschiedene Möglichkeiten, die Befehlszeile zum Suchen von Dateien unter Linux zu verwenden, unabhängig davon, welchen Desktop-Manager Sie verwenden.

Verwenden des Befehls Suchen

Mit dem Befehl «find» können Sie nach Dateien suchen, für die Sie die ungefähren Dateinamen kennen. Die einfachste Form des Befehls sucht nach Dateien im aktuellen Verzeichnis und rekursiv durch seine Unterverzeichnisse, die den angegebenen Suchkriterien entsprechen. Sie können nach Dateien nach Name, Eigentümer, Gruppe, Typ, Berechtigungen, Datum und anderen Kriterien suchen.

Wenn Sie an der Eingabeaufforderung den folgenden Befehl eingeben, werden alle im aktuellen Verzeichnis gefundenen Dateien aufgelistet.

find .

Der Punkt nach «Suchen» gibt das aktuelle Verzeichnis an.

Verwenden Sie die Taste, um Dateien zu finden, die einem bestimmten Muster entsprechen -name Streit. Sie können Dateinamen-Metazeichen verwenden (z * ), aber Sie sollten entweder ein Escapezeichen setzen ( ) vor jedem von ihnen oder in Anführungszeichen setzen.

Wenn wir beispielsweise alle Dateien, die mit «pro» beginnen, im Verzeichnis «Dokumente» finden möchten, verwenden wir die cd Documents/ Befehl, um in das Verzeichnis «Dokumente» zu wechseln, und geben Sie dann den folgenden Befehl ein:

find . -name pro*

Alle Dateien im aktuellen Verzeichnis, die mit «pro» beginnen, werden aufgelistet.

HINWEIS: Der Befehl find unterscheidet standardmäßig zwischen Groß- und Kleinschreibung. Wenn bei der Suche nach einem Wort oder einer Phrase die Groß- und Kleinschreibung nicht berücksichtigt werden soll, verwenden Sie die Option -iname Option mit dem Befehl find. Es ist die fallunabhängige Version des -name Befehl.

Wenn find findet keine Dateien, die Ihren Kriterien entsprechen, es wird keine Ausgabe erzeugt.

Der Befehl find bietet viele Optionen zum Verfeinern der Suche. Weitere Informationen zum Befehl find finden Sie unter man find in einem Terminalfenster und drücken Sie die Eingabetaste.

Verwenden des Befehls «Suchen»

Der Befehl find ist schneller als der Befehl find, da er eine zuvor erstellte Datenbank verwendet, während der Befehl find im realen System alle tatsächlichen Verzeichnisse und Dateien durchsucht. Der Befehl find gibt eine Liste aller Pfadnamen zurück, die die angegebene Zeichengruppe enthalten.

Die Datenbank wird regelmäßig von cron aktualisiert. Sie können sie jedoch auch jederzeit selbst aktualisieren, um aktuelle Ergebnisse zu erhalten. Geben Sie dazu an der Eingabeaufforderung den folgenden Befehl ein:

sudo updatedb

Geben Sie Ihr Passwort ein, wenn Sie dazu aufgefordert werden.

Die Grundform des Befehls «find» findet alle Dateien im Dateisystem, beginnend im Stammverzeichnis, die alle oder einen Teil der Suchkriterien enthalten.

locate mydata

Mit dem obigen Befehl wurden beispielsweise zwei Dateien mit «mydata» und eine Datei mit «data» gefunden.

Wenn Sie alle Dateien oder Verzeichnisse suchen möchten, die genau und nur Ihre Suchkriterien enthalten, verwenden Sie die -b Option mit dem Befehl find wie folgt.

locate -b ‘mydata’

Der umgekehrte Schrägstrich im obigen Befehl ist ein Globbing-Zeichen, mit dem Platzhalterzeichen in einem unspezifischen Dateinamen in eine Reihe bestimmter Dateinamen erweitert werden können. Ein Platzhalter ist ein Symbol, das bei der Auswertung des Ausdrucks durch ein oder mehrere Zeichen ersetzt werden kann. Die häufigsten Platzhaltersymbole sind das Fragezeichen ( ? ), das für ein einzelnes Zeichen und das Sternchen steht ( * ), was für eine zusammenhängende Zeichenfolge steht. Im obigen Beispiel deaktiviert der Backslash das implizite Ersetzen von «mydata» durch «* mydata *», sodass nur Ergebnisse mit «mydata» angezeigt werden.

Der Befehl mlocate ist eine neue Implementierung von find. Es indiziert das gesamte Dateisystem, aber die Suchergebnisse enthalten nur Dateien, auf die der aktuelle Benutzer Zugriff hat. Wenn Sie die mlocate-Datenbank aktualisieren, werden Zeitstempelinformationen in der Datenbank gespeichert. Auf diese Weise kann mlocate feststellen, ob sich der Inhalt eines Verzeichnisses geändert hat, ohne den Inhalt erneut zu lesen, und Aktualisierungen der Datenbank werden schneller und weniger anspruchsvoll für Ihre Festplatte.

Wenn Sie mlocate installieren, ändert sich die Binärdatei / usr / bin / Locate und zeigt auf mlocate. Geben Sie zum Installieren von mlocate den folgenden Befehl an der Eingabeaufforderung ein, falls es nicht bereits in Ihrer Linux-Distribution enthalten ist.

sudo apt-get install mlocate

HINWEIS: Wir werden Ihnen später in diesem Artikel einen Befehl zeigen, mit dem Sie bestimmen können, wo sich die ausführbare Datei für einen Befehl befindet, falls vorhanden.

Der Befehl mlocate verwendet nicht dieselbe Datenbankdatei wie der Standardbefehl lococate. Daher möchten Sie die Datenbank möglicherweise manuell erstellen, indem Sie an der Eingabeaufforderung den folgenden Befehl eingeben:

sudo /etc/cron.daily/mlocate

Der Befehl mlocate funktioniert erst, wenn die Datenbank entweder manuell erstellt wurde oder wenn das Skript von cron ausgeführt wird.

Geben Sie Folgendes ein, um weitere Informationen zum Befehl find oder zum Befehl mlocate zu erhalten man locate oder man mlocate in einem Terminalfenster und drücken Sie die Eingabetaste. Für beide Befehle wird der gleiche Hilfebildschirm angezeigt.

Verwenden des Befehls Which

Der Befehl «which» gibt den absoluten Pfad der ausführbaren Datei zurück, die aufgerufen wird, wenn ein Befehl ausgegeben wird. Dies ist nützlich, um den Speicherort einer ausführbaren Datei zum Erstellen einer Verknüpfung zum Programm auf dem Desktop, in einem Bedienfeld oder an einer anderen Stelle im Desktop-Manager zu ermitteln. Geben Sie beispielsweise den Befehl ein which firefox zeigt die im Bild unten gezeigten Ergebnisse an.

Standardmäßig zeigt der Befehl which nur die erste übereinstimmende ausführbare Datei an. Verwenden Sie die, um alle übereinstimmenden ausführbaren Dateien anzuzeigen -a Option mit dem Befehl:

which -a firefox

Sie können nach mehreren ausführbaren Dateien gleichzeitig suchen, wie in der folgenden Abbildung dargestellt. Es werden nur die gefundenen Pfade zu ausführbaren Dateien angezeigt. Im folgenden Beispiel wurde nur die ausführbare Datei «ps» gefunden.

HINWEIS: Der Befehl which durchsucht nur die PATH-Variable des aktuellen Benutzers. Wenn Sie nach einer ausführbaren Datei suchen, die nur für den Root-Benutzer als normalen Benutzer verfügbar ist, werden keine Ergebnisse angezeigt.

Um weitere Informationen zu dem Befehl which zu erhalten, geben Sie an der Eingabeaufforderung in einem Terminalfenster «man which» (ohne Anführungszeichen) ein und drücken Sie die Eingabetaste.

Verwenden des Whereis-Befehls

Mit dem Befehl whereis können Sie herausfinden, wo sich die Binär-, Quell- und Manpage-Dateien für einen Befehl befinden. Zum Beispiel tippen whereis firefox An der Eingabeaufforderung werden die Ergebnisse wie im folgenden Bild angezeigt.

Wenn nur der Pfad zur ausführbaren Datei angezeigt werden soll und nicht die Pfade zur Quelle und zu den Manpages, verwenden Sie die -b Möglichkeit. Zum Beispiel der Befehl whereis -b firefox wird nur angezeigt /usr/bin/firefox als Ergebnis. Dies ist praktisch, da Sie höchstwahrscheinlich häufiger nach der ausführbaren Datei eines Programms suchen als nach Quell- und Manpages für dieses Programm. Sie können auch nur nach den Quelldateien suchen ( -s ) oder nur für die Manpages ( -m ).

Geben Sie Folgendes ein, um weitere Informationen zum Befehl whereis zu erhalten man whereis in einem Terminalfenster und drücken Sie die Eingabetaste.

Den Unterschied zwischen dem Whereis-Befehl und dem Which-Befehl verstehen

Der Befehl whereis zeigt Ihnen den Speicherort für die Binär-, Quell- und Manpages für einen Befehl an, während der Befehl which nur den Speicherort der Binärdatei für den Befehl anzeigt.

Der Befehl whereis durchsucht eine Liste spezifischer Verzeichnisse nach Binär-, Quell- und Man-Dateien, während der Befehl which die Verzeichnisse durchsucht, die in der Umgebungsvariablen PATH des aktuellen Benutzers aufgeführt sind. Für den Befehl whereis finden Sie die Liste der spezifischen Verzeichnisse im Abschnitt FILES der Manpages für den Befehl.

Wenn es um standardmäßig angezeigte Ergebnisse geht, zeigt der Befehl whereis alles an, was er findet, während der Befehl which nur die erste gefundene ausführbare Datei anzeigt. Sie können dies mit dem ändern -a Option, die zuvor für den Befehl which erläutert wurde.

Da der Befehl whereis nur Pfade verwendet, die fest im Befehl codiert sind, finden Sie möglicherweise nicht immer das, wonach Sie suchen. Wenn Sie nach einem Programm suchen, von dem Sie glauben, dass es in einem Verzeichnis installiert ist, das nicht in den Manpages für den Befehl whereis aufgeführt ist, möchten Sie möglicherweise den Befehl which mit dem Befehl verwenden -a Option, um alle Vorkommen des Befehls im gesamten System zu finden.

Continue Reading
Click to comment

Leave a Reply

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Tendencia