Dies ist eine Übersicht über Punkte, die ich in der ersten Woche nach meinem Eintritt in das Unternehmen nicht verstanden habe. Persönliche Notizen.
Suchen Sie nach Dateien nach Namen Ändern Sie den Ausgabeinhalt (führen Sie den Befehl ls aus).
Grundlegende Grammatik
** find [Option] [Suchpfad] [Suchausdruck]
**
Wenn Sie nur "Suchen" ausführen, werden alle Dateien im aktuellen Verzeichnis angezeigt. "Find / etc" zeigt alle Dateien im Verzeichnis "/ etc" an.
Verwenden Sie die Option ** " -name "
**, um den Dateinamen anzugeben, nach dem Sie suchen möchten.
(Das Verzeichnis wird auch durchsucht.)
So suchen Sie nach Dateien, die "bash" im Dateinamen in ** ~
** in Ihrem Home-Verzeichnis enthalten:
Durch Hinzufügen des Platzhalters ** *
** vor und nach dem Bash können Dateien wie ●● _bash.js und .bash ●● in das Suchziel aufgenommen werden.
Wenn Sie keinen Platzhalter angeben, müssen Sie keine doppelten Anführungszeichen ** "
** hinzufügen.
Bei Verwendung von Platzhaltern
find ~ -name "*bash*"
Bei festem Dateinamen ohne Platzhalter
find ~ -name .bash_profile
Suchen Sie nur nach Dateien, nicht nach Verzeichnissen
** -type f
Option **
Beispiel) Wenn Sie "profile.txt" im hoge-Verzeichnis suchen möchten
find /hoge -name profile.txt -type f
Wenn Sie das Verzeichnis durchsuchen möchten
** -type d
Option **
Beim Targeting symbolischer Links
** -Typ l
** Option
Als ich find ausgeführt habe, habe ich viele solche Ausführungsergebnisse erhalten, und die Ausführungsergebnisse sind sehr schwer zu verstehen.
Es war das gleiche, als ich es mit sudo find ~ lief.
find: /Users/username/Library/Caches/CloudKit/com.apple.Safari: Operation nicht erlaubt
Dies liegt daran, dass, wenn Sie "/" als Suchort angeben, auch nicht autorisierte Orte durchsucht werden und eine große Anzahl von Fehlermeldungen angezeigt wird, sodass "** 2> / dev / null
** "als Fehlermeldung verwendet wird. Es ist eine gute Idee, es wegzuwerfen (auf ein Null-Gerät umzuleiten). Und das.
Ein Beispiel für das Verwerfen einer Fehlermeldung mit ** 2> / dev / null
**
find /hoge -name profile.txt -type f 2>/dev/null
Dadurch wird die Suchfehlermeldung für nicht autorisierte Standorte verworfen und nur reine Suchergebnisse angezeigt.
Sie kann ausgeführt werden, indem zusätzlich zum Suchausdruck "action" angegeben wird.
** -print
Aktion ** (Standard)
Dateinamen anzeigen
** -ls
Aktion **
Detaillierte Informationen zur Datei werden angezeigt.
Diese Informationen werden als äquivalent zum Befehl "ls -dils" angezeigt und werden ziemlich lang, da sie die Dateigröße usw. enthalten.
Beispiel)
find ~ -name .bash_profile -type f -ls 2>/dev/null
Ausführungsergebnis
12902229406 8 -rw-r--r--1 Benutzername Mitarbeiter 629 24. November 17:56 /Users/Nutzername/.bash_profile
Wenn es sich bei der Informationsmenge um "ls -dF" handelt, verwenden Sie die Aktion "-exec" und geben Sie "-exec ls -dF {};" an. .. Einzelheiten finden Sie in der Quelle.
Extrahieren Sie nur die erforderlichen Teile aus dem Ausführungsergebnis Suche nach Wort Suchen Sie die vorherigen und nächsten Zeilen Anzeige mit Zeilennummer
Grundlegende Grammatik
** grep [optional] Suchmusterdatei
**
Oder
** Befehl | grep [optional] Suchmuster
**
grep a work/*
Name der Grep-Suchzeichenfolge|grep-Suchzeichenfolge 2
Wenn Sie die Suchergebnisse des Befehls grep mit Zeilennummern anzeigen möchten, verwenden Sie die Option ** -n
**.
** grep -n Suchzeichenfolge Textdatei
**
Beispiel) Durchsuchen Sie die Datei "~ / .ssh / hoge.txt" nach einer Zeichenfolge, die die Zeichenfolge "EA" enthält, und zeigen Sie die Zeilennummer an, falls vorhanden.
grep -n EA ~/.ssh/hoge.txt
Ausführungsergebnis
2:asfasdfasdasdfasEAasdasdfasf
Recommended Posts