[LINUX] Suchen, suchen Sie die Befehlsübersicht

Einführung

Die meisten Dateioperationen werden mit "git grep" ausgeführt, und ich habe die Grundlagen vernachlässigt Ich beschloss, es noch einmal nachzuschlagen.

find

Wie der Name schon sagt, ist find eine Methode zum Suchen von Dateien im Verzeichnisbaum. Die Grundform ist wie folgt.

$ find (Startverzeichnis suchen)(Suchbedingung) (Aktion)

Suchbedingungen

-name

$ find . -name file-1.txt -print
./file-1.txt

Suchen Sie nach Namen, wie der Name schon sagt. Wenn Sie jedoch einen Platzhalter (*?) Verwenden, müssen Sie einfache oder doppelte Anführungszeichen verwenden, da diese von der variablen Erweiterung von Bash gelesen werden.

-type

$ find . -type d -print

Wie der Name schon sagt, wird die Suchbedingung (-type) auch nach Typnamen durchsucht. Das "d" vom "Typ d" ist der Dateityp, und im obigen Fall ist es eine Anweisung, "nur das Verzeichnis von der aktuellen Position zu finden".

Es ist auch möglich, in Kombination wie unten gezeigt zu verwenden. (-a ist eine UND-Suche und kann weggelassen werden.)

$ find . -type f -a -name '*.txt' -print

Durchsuchbare Dateitypen

Geben Sie Dateityp an
-Typ f Normale Datei
-Typ d Verzeichnis
-Typ l Symbolischer Link

Aktion

Derzeit werden alle mit "-print" angezeigt, aber wenn sie mit "-ls" angezeigt werden, werden sie im "ls" -Format angezeigt.

find . -type f -a -name '*.txt' -ls
  671143      0 -rw-rw-r--   1 vagrant  vagrant         0 Apr 19 04:29 ./find/file-1.txt
  671215      0 -rw-rw-r--   1 vagrant  vagrant         0 Apr 19 04:29 ./find/file-3.txt
  671213      0 -rw-rw-r--   1 vagrant  vagrant         0 Apr 19 04:29 ./find/file-2.txt

locate Suchen Sie im Gegensatz zu "Suchen" in der Datenbank, in der der Dateipfad gespeichert ist, damit er schneller durchsucht werden kann als "Suchen".

Installation

Es ist von Anfang an nicht in Linux enthalten, daher müssen Sie es installieren.

Überprüfen Sie, ob es bereits vorhanden ist

$ locate --version

Wenn es nicht enthalten ist, installieren Sie es.

Mit CentOS installieren
$ sudo yum install mlocate
Installiere auf Ubuntu
$ sudo apt-get install mlocate

Datenbank erstellen

$ updatedb

Der obige Befehl "updatedb" erstellt eine Datenbank und die Datenbank wird in regelmäßigen Abständen aktualisiert.

wichtiger Punkt

Datenbankaktualisierungen werden während der Installation einmal täglich aktualisiert. Daher wird es einen Tag später sein, dass die gerade erstellte Datei bei der Suche erfasst wird. Außerdem wird die gerade gelöschte Datei bis einen Tag später bei der Suche erfasst.

`locate ist gut geeignet, um Dateien einige Zeit nach ihrer Erstellung (Löschung) zu finden. ``

Suche nach Ort

$ locate bash

Dies beschleunigt alle Dateien mit dem Namen bash.

Durchsuchbare Dateitypen

Optionen Effekte
-i Fall ignorieren
-b Nur Dateinamen suchen (Verzeichnis ignorieren)
-A und suchen (normalerweise oder suchen)

Verweise

Neues Linux-Lehrbuch

Recommended Posts

Suchen, suchen Sie die Befehlsübersicht
Linux-Befehlsübersicht
Docker-Befehlsübersicht
[Linux] Grundlegende Befehlsübersicht
Bildbezogene Befehlsübersicht
[Lernnotiz] Zusammenfassung des Django-Befehls
[Linux] Zusammenfassung der Benutzer- / Gruppenbefehle
Jupyter Notebook Magic Command Persönliche Zusammenfassung
[Für Wettkampfprofis] Union Baumübersicht finden
[Linux-Befehlsübersicht] Befehlsliste [Muss für Anfänger]
Migemo-Version des Befehls: find,: mfind