Befehl unter Linux suchen

Der Befehl Find wird verwendet, um Objekte im Dateisystem zu filtern. Es kann verwendet werden, um Dateien, Verzeichnisse, Dateien mit bestimmten Mustern zu finden, z. B. txt,.php und so weiter. Es kann nach Dateinamen, Ordnernamen, Änderungsdatum, Berechtigungen usw. suchen.

$ find 

Hinweis:

Linux ist case sensitive. „Datei“, „Datei“, „Datei“, „DATEI“ sind verschiedene Dateinamen im Linux-Dateisystem.

Werfen wir einen Blick auf verschiedene Optionen, die mit dem Befehl find verwendet werden.

Betrachten Sie die Baumhierarchie:

 Findtree

Es gibt einige häufig verwendete Befehle, die basierend auf dieser Hierarchie beschrieben werden.

  • – name: wird verwendet, um eine bestimmte Datei zu suchen.
  • -exec CMD: Die Datei wird gemäß der angegebenen Bedingung durchsucht und gibt 0 als Exit-Status zurück.
  • -inum N: Suche nach der Datei mit der Inode-Nummer N.
  • -links N: Suche nach der Datei mit den Links ‚N‘.
  • -neuere Datei: Suche nach den Dateinamen, die nach „Datei“ geändert werden.
  • -Dauerwelle oktal: suchen Sie nach den Dateien, wenn die Berechtigung ‚oktal‘ ist.
  • -drucken: Gibt den Pfad der aufgelisteten Datei aus.
  • -empty: Suche nach den leeren Dateien oder Verzeichnissen.
  • -size +N/-N: Suche nach Dateien der Größe ‚N‘.
  • -Benutzername: Suchen Sie nach den Dateien mit dem Benutzernamen oder im Besitz des Benutzers.
  • -rm-Datei: Suchen Sie nach der Datei und entfernen Sie sie.

Inhaltsverzeichnis

Find command with -name option

Dieser Befehl durchsucht eine Datei mit einem bestimmten Namen.

$find ./A1 -name file1.txt
 Suchname

Datei eines Musters suchen

Dieser Befehl findet eine Datei eines bestimmten Musters wie .PHP, .txt und so weiter.

$find -name '*.txt' 
 Suchnametxt

Find with -exec option:

Dieser Befehl gibt den Status für die erfolgreiche Befehlsausführung gemäß der Bedingung zurück.

In diesem Beispiel gibt der Befehl Zeilen aus, die das Schlüsselwort „hello“ enthalten. Das Schlüsselwort Grep wird verwendet, um Wörter in Dateien zu finden.

$ find ./A1/B2 -exec grep 'hello' {} \;
 Findexec

Suchen Sie die Datei mit -inode Nr.

Ein Inode ist eine Datenstruktur auf einem traditionellen Unix-Dateisystem. Es wird als Indizierung von Dateien bezeichnet.

– der Befehl inum wird verwendet, um nach Dateien mit der Inode-Nummer ‚N‘ zu suchen.

Um die -Inode-Nummer zu finden, lautet der Befehl :

$ ls -id /path to dir

Um die Datei mit einer bestimmten Inode-Nummer zu finden, lautet der Befehl:

$ find ./A1/B2 -inum 42032
 Findinum

Suchen Sie Links mit der Option -links

Dieser Befehl wird verwendet, um nach Dateien mit ‚N‘ Links zu suchen

$ find ./B2 -links 1
 Findlinks

Linux Find -newer option

Dieser Befehl wird verwendet, um nach den Dateien zu suchen, die nach der ‚Datei‘ geändert wurden (es kann eine beliebige Datei sein).

$ find -newer file.txt
 Finde neu

Es werden die Dateinamen gedruckt, die nach ‚Datei‘ geändert wurden.txt‘.

Linux Find -perm option

Dieser Befehl sucht nach der Datei, die die Berechtigung ‚octal‘ hat.

$ find ./A1 -perm 664
 Findperm

Pfad einer Datei drucken

Mit diesem Befehl wird der Pfad des Verzeichnisses oder der Datei gedruckt.

$ find -print 
 Findendrucken

Hier wird der Pfad der Datei im Verzeichnis B2 gedruckt (betrachten Sie die Baumhierarchie wie oben gezeigt)

Leere Dateien suchen

Dieser Befehl wird verwendet, um nach leeren Dateien oder Verzeichnissen zu suchen.

$ find ./A1 -empty 
 Findempty

Dateien einer bestimmten Größe suchen

Dieser Befehl wird verwendet, um nach Dateien mit der Größe ‚N‘ zu suchen‘

$ find ./B2 -size 0M
 Findsize

Linux find -user name option

Dieser Befehl sucht nach den Dateien, die dem Benutzernamen oder der ID ’name‘ gehören.

$ find ./A1 -user vaishali
 Findusername

So entfernen Sie Dateien oder Verzeichnisse

Mit diesem Befehl wird die Datei aus einem Verzeichnis entfernt.

$ find ./A1 -name "file.txt" -exec rm -f {} \;
 Findremovefile

Dies sind die Befehle, die verwendet werden können, um Dateien oder Verzeichnisse zu suchen.

Schlussfolgerung

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.