Finden Sie den Befehl in Linux mit praktischen Beispielen

Finden Sie den Befehl in Linux mit praktischen Beispielen

Der Befehl find ist ein vielseitiges und leistungsstarkes Dienstprogramm unter Linux, mit dem Benutzer basierend auf verschiedenen Kriterien wie Name, Typ, Größe, Änderungszeit und mehr nach Dateien und Verzeichnissen suchen können. Das Beherrschen des Find -Befehls kann Ihre Effizienz und Effektivität bei der Arbeit mit Linux -Systemen erheblich verbessern. Dieser Artikel enthält einen umfassenden Leitfaden für den Befehl Find, begleitet von praktischen Beispielen.

Suchen Sie die Befehlssyntax und Optionen

Die grundlegende Syntax des Befehls zum Finden lautet wie folgt:

Finden Sie [Pfad] [Ausdruck]
1Finden Sie [Pfad] [Ausdruck]
  • WEG: Das Verzeichnis, in dem die Suche gestartet werden kann.
  • AUSDRUCK: Die Suchkriterien, einschließlich Optionen und Tests.

Einige gängige Optionen sind:

  • -Name: Suchen Sie nach Dateien basierend auf ihrem Namen oder Muster nach Dateien.
  • -Typ: Suche nach Dateien basierend auf ihrem Typ (e.G., Regelmäßige Dateien, Verzeichnisse, symbolische Links).
  • -Größe: Suche nach Dateien basierend auf ihrer Größe.
  • -mtime: Suchen Sie nach Dateien basierend auf ihrer Änderungszeit.
  • -Benutzer: Suchen Sie nach Dateien basierend auf ihrem Besitzer.
  • -Gruppe: Suchen Sie nach Dateien basierend auf ihrer Gruppe.

Dateien nach Namen finden

Verwenden Sie das, um nach Dateien nach Namen oder Muster zu suchen -Name Option gefolgt vom Dateinamen oder Muster, das in einzelnen Zitaten eingeschlossen ist.

  • Fallempfindliche Suche:
    Finden Sie/Pfad/to/Directory -name 'Dateiname.txt'  
  • Fall-unempfindliche Suche:
    Finden Sie/Pfad/to/verzeichnis -Iname 'Dateiname.txt'  
  • Mit Wildcards:
    FIND/PATH/TO/DIRECTORY -NAME '**.txt'  

Dateien nach Typ finden:

Verwenden Sie die nach Dateien basierend auf ihrem Typ -Typ Option gefolgt vom Dateityp -Spezifizierer.

  • Regelmäßige Dateien:
    FIND/PATH/TO/DIRECTORY -TYPE F FINDEN  
  • Verzeichnisse:
    Finden/Pfad/to/Directory -Typ D  
  • Symbolische Links:
    Finden/Pfad/to/Directory -Typ l l  

Dateien nach Größe finden:

Verwenden Sie die nach Dateien basierend auf der Größe der Größe -Größe Option, gefolgt von einem Vergleichsbetreiber (+, -, oder =) und die Dateigröße.

  • Dateien größer als 1 MB:
    Finden/Pfad/zu/Verzeichnis -size +1m  
  • Dateien kleiner als 10 kb:
    Finden/Pfad/zu/Verzeichnis -size -10k  
  • Dateien genau 512 Bytes:
    Finden/Pfad/TO/DIRECTORY -SIZE 512C  

Dateien nach Änderungszeit finden:

Verwenden Sie die, um nach Dateien basierend auf ihrer Änderungszeit zu suchen -mtime Option, gefolgt von einem Vergleichsbetreiber (+, -, oder =) und die Anzahl der Tage.

  • Dateien, die innerhalb der letzten 7 Tage geändert wurden:
    Finden Sie/Pfad/to/verzeichnis -mtime -7  
  • Dateien, die nicht innerhalb der letzten 30 Tage geändert wurden:
    Finden Sie/Pfad/to/verzeichnis -mtime +30  
  • Dateien vor genau 14 Tagen geändert:
    Finden Sie/Pfad/to/verzeichnis -mtime 14  

Finden von Dateien nach Eigentümer und Gruppe:

Verwenden Sie die, um nach Dateien basierend auf ihrem Besitzer oder ihrer Gruppe zu suchen -Benutzer oder -Gruppe Option gefolgt vom Benutzernamen oder Gruppennamen.

  • Dateien, die dem Benutzer "John" gehören:
    FIND/PATH/TO/DIRECTORY -User John  
  • Dateien, die zu Gruppenentwicklern gehören:
    Finden Sie/Pfad/zu/Verzeichnis -Gruppenentwicklern  

Ausführen von Befehlen auf gefundenen Dateien:

Verwenden Sie die Aktionen für gefundene Dateien, um die gefundenen Dateien auszuführen -Geschäftsführer Option, gefolgt vom Befehl und ein Paar lockiger Zahnspangen () als Platzhalter für den Dateipfad. Der Befehl sollte mit einem Semikolon beendet werden (;), die entkommen oder in einzelnen Zitate eingeschlossen werden müssen.

  • Löschen gefundener Dateien:
    FIND/PATH/TO/DIRECTORY -NAME '**.Bak '-exec rm  \;  
  • Verschiebungen gefundene Dateien in ein bestimmtes Verzeichnis:
    FIND/PATH/TO/DIRECTORY -NAME '**.log '-exec mv /path/to/destination \;  
  • Ändern der Dateiberechtigungen:
    FIND/PATH/TO/DIRECTORY -TYPE f -exec chmod 644  \;  

Kombinieren Sie mehrere Suchkriterien:

Verwenden Sie logische Operatoren, um mehrere Suchkriterien zu kombinieren, z -Und, -oder, Und -nicht.

  • Finden Sie Dateien, die größer als 1 MB sind und innerhalb der letzten 7 Tage geändert werden:
    FIND/PATH/TO/DIRECTORY -Size +1m -und -mtime -7  
  • Dateien finden 'John' oder gehören zur "Entwickler" Gruppe:
    Finden/Pfad/TO/DIRECTORY -User John -or -Gruppenentwickler  
  • Suchen Sie alle Dateien mit Ausschluss derjenigen mit a ''.TMP ' Verlängerung:
    Finden Sie/Pfad/to/Directory -not -name '*.TMP '  

Fortgeschrittene Befehlstechniken finden:

  • Verwenden von Regex -Mustern mit dem Befehl find:
    Find/Pfad/TO/DIRECTORY -TYPE F -REGEX '.*\.\ (txt \ | log \) '  
  • Finden und Umgang mit gebrochenen symbolischen Links:
    find/path/to/directory -typ l -xtype l -exec rm  \;  
  • Suchen in bestimmten Verzeichnissen oder Ausschluss bestimmter Verzeichnisse:
    find/path/to/directory -path '/path/to/ausschließe/*' -prune -or -name '**.txt '-print  

Best Practices für die Verwendung des Befehls zum Finden:

  • Beginnen Sie Ihre Suche vom spezifischsten Verzeichnis, um den Suchprozess zu optimieren.
  • Verwenden Sie Wildcards und Regex -Muster mit Bedacht, um Ihre Suchergebnisse zu verfeinern.
  • Überprüfen Sie Ihre Suchkriterien, bevor Sie Befehle in gefundenen Dateien ausführen, um unbeabsichtigte Aktionen zu vermeiden.
  • Entweichen oder zitieren.

Abschluss

Das Beherrschen des Befehls für Find in Linux ist entscheidend für die effiziente Suche und Verwaltung von Dateien auf Ihrem System. Durch das Verständnis der Syntax, der Optionen und der praktischen Beispiele können Sie Ihre Fähigkeiten bei der Verwendung dieses leistungsstarken Dienstprogramms verbessern. Denken Sie daran, Best Practices zu befolgen, wenn Sie den Befehl Find verwenden, um sicherzustellen, dass Ihre Suchvorgänge korrekt und effektiv sind.