Wie finde ich Dateien unter Linux?

Veröffentlicht: 2022-04-07

Inhaltsverzeichnis

Einführung:

Find ist ein UNIX-Befehlszeilendienstprogramm, das eine Dateihierarchie durchläuft. Sie können es verwenden, um Dateien und Verzeichnisse zu finden und zu bearbeiten. Mit diesem Befehl kann nach Dateien, Ordnern, Namen, Erstellungsdaten, Änderungsdaten, Eigentümern und Berechtigungen gesucht werden.

Sie können es weiter mit der Option „ exec “ kombinieren, um verschiedene Aktionen mit den Ergebnissen durchzuführen, die vom Befehl find gefunden wurden.

In diesem Artikel erfahren Sie, wie Sie Dateien unter Linux mit dem Befehl Suchen finden .

Wie funktioniert der Find-Befehl?

Find findet Dateien auf Ihrem Computer. Gemäß den Vorrangregeln wertet es jeden Ausdruck von links nach rechts in jedem Verzeichnisbaum aus, der durch die angegebenen Pfade angegeben ist. Bei UND-Operationen oder bei ODER-Operationen ist das Ergebnis „bekannt“, wenn die linke Seite des Ausdrucks WAHR oder FALSCH ist. Find fährt dann mit dem nächsten Pfad fort, bis alle Pfade erkundet wurden.

Der Befehl find ist das grundlegendste und leistungsstärkste Werkzeug für die Arbeit mit Dateien auf einem Linux-System. Dateien können allein oder in Verbindung mit anderen Programmen gefunden werden.

Syntax:

find [options] [path…] [expression]

oder

$ find [where to start searching from]

[Ausdruck bestimmt, was zu finden ist] [-Optionen] [was zu finden ist]

  • Die symbolische Verknüpfungsbehandlung, die Debugging-Optionen und die Optimierungsstrategie werden alle von der options- Eigenschaft gesteuert.
  • Die Eigenschaft path … gibt das Verzeichnis oder die Verzeichnisse an, in denen find nach Dateien sucht.
  • Optionen, Suchmuster und Aktionen werden durch Operatoren im Ausdrucksattribut getrennt.

Optionen:

-exec CMD : Die durchsuchte Datei, die die obigen Kriterien erfüllt und 0 für einen erfolgreichen Beendigungsstatus der Befehlsausführung zurückgibt.

-ok CMD : Ähnlich wie -exec, aber der Benutzer wird vorher aufgefordert.

-inum N : Suche nach Dateien mit der Nummer 'N' im Inode.

-links N : Dateien finden, die 'N' Links haben.

-name demo : Suchen Sie nach Dateien mit dem Namen 'demo' im Dateinamen.

-neuere Datei : Suchen Sie nach Dateien, die seit „Datei“ aktualisiert oder erstellt wurden.

-perm octa l: Wenn die Berechtigung 'oktal' ist, suchen Sie nach der Datei.

-print : Gibt die Pfadnamen der anhand der verbleibenden Kriterien identifizierten Dateien aus.

-empty : Suchen Sie nach Dateien und Ordnern, die leer sind.

-size +N/-N : Suche nach Dateien mit 'N' Blöcken; 'N' gefolgt von 'c' kann verwendet werden, um die Zeichengröße zu messen; '+N' bedeutet Größe > 'N' Blöcke, während '-N' Größe 'N' Blöcke bedeutet.

-Benutzername : Suchen Sie nach Dateien mit dem Benutzernamen „Name“ oder der ID „Name“.

(expr ) : Wenn 'expr' wahr ist, dann wahr; verwendet, um Kriterien mit OR oder AND zu gruppieren.

! expr : Wahr, wenn 'expr' falsch ist.

Ausdrücke:

Optionen (die sich eher auf den allgemeinen Betrieb als auf die Dateiverarbeitung auswirken und immer wahr zurückgeben), Tests (die einen wahren oder falschen Wert zurückgeben) und Aktionen (die Nebenwirkungen haben und einen wahren oder falschen Wert zurückgeben) werden alle durch Operatoren im Ausdruck getrennt . Wenn der Operator fehlt, wird -and abgeleitet.

Wenn der Ausdruck keine zusätzlichen Aktionen enthält, wird -prune, -print auf alle Dateien angewendet, für die er wahr ist.

Sehen wir uns zum Beispiel den folgenden Befehl als Beispiel an

find -L /var/www -name "*.js"

  • Die Option -L (Optionen) weist den Find-Befehl an, symbolischen Links zu folgen.
  • /var/www (Pfad…) gibt das Verzeichnis an, das durchsucht wird.
  • Der (Ausdruck) -name "*.js" weist find an, Dateien mit der Endung .js (JavaScript-Dateien) zu durchsuchen .

So finden Sie Dateien unter Linux nach Namen

Dateien können anhand des Namens mit dem Befehl find gesucht werden. Sie können eine Datei nach ihrem Namen suchen, indem Sie die Option -name verwenden.

find -type f -name functions.php

So finden Sie Dateien unter Linux

Verwenden Sie -iname anstelle von -name, um eine Suche mit Berücksichtigung der Groß-/Kleinschreibung durchzuführen

So finden Sie Dateien in Linux nach Erweiterung

Sie können nach Dateien nach Erweiterung suchen, genauso wie Sie nach Dateien nach Namen suchen können.

find -type f -name '*.php'

Verwenden Sie den folgenden Befehl, um Dateien ohne die angegebene Erweiterung zu finden

find -type f - not -name '*.php'

Suchen Sie Dateien nach Typ

Wenn Sie einen bestimmten Dateityp suchen müssen, z. B. eine normale Datei, ein Verzeichnis oder einen symbolischen Link, müssen Sie möglicherweise nach bestimmten Dateitypen suchen. Alles in Linux ist eine Datei.

Geben Sie den Dateityp an, nach dem Sie suchen, indem Sie die Option -type und einen der folgenden Deskriptoren verwenden:

  • f: eine normale Datei
  • d: Verzeichnis
  • l: symbolischer Link
  • c: Zeichengeräte
  • b: Geräte blockieren
  • p: Named Pipe (FIFO)
  • s: Steckdose

find public_html/wp-admin/ -type d

Finden Sie Dateien nach Größe

Der Parameter -size sollte zusammen mit dem Parameter size übergeben werden, um Dateien anhand ihrer Größe zu finden. Die folgenden Suffixe können verwendet werden, um die Dateigröße anzugeben:

  • b: 512-Byte-Blöcke (Standard)
  • c: Bytes
  • w: Zwei-Byte-Wörter
  • k: Kilobyte
  • M: Megabyte
  • G: Gigabyte

find . -type f -size -1M

Wenn Sie nach Dateien mit einer Größe von mehr als 1 MB suchen möchten, verwenden Sie +

find . -type f -size +1M

Sie können sogar nach Dateien innerhalb eines Größenbereichs suchen

find . -type f -size +1M -size 3M

Finden Sie Dateien nach Änderung

Der Befehl find kann auch verwendet werden, um nach Dateien zu suchen, basierend darauf, wann sie zuletzt geändert, aufgerufen oder geändert wurden.

Verwenden Sie die Plus- und Minuszeichen für „mehr als“ und „weniger als“, genau wie bei der Suche nach Größe.

find . -mtime +30 -daystart

Per Erlaubnis finden

Sie können die Option -perm verwenden, um anhand ihrer Berechtigungen nach Dateien zu suchen.

find public_html/wp-admin/css -perm /444

/ als Präfix verwendet wird, muss mindestens bei einer Kategorie mindestens das entsprechende Bit gesetzt sein, damit eine Datei übereinstimmt.

-prefix, dann müssen mindestens die angegebenen Bits gesetzt sein.

Suche nach Besitzer

Verwenden Sie die Parameter -user und -group, um Dateien zu finden, die einem bestimmten Benutzer oder einer bestimmten Gruppe gehören.

find -user testc7963

Fazit

Wir haben gezeigt, wie man den find-Befehl mit einer Vielzahl von Kriterien und Argumenten anwendet.
Dieser Artikel soll Ihnen ein grundlegendes Verständnis dafür vermitteln, wie Sie Dateien auf Linux-Computern finden.