Wie kann ich nach Dateien suchen, die ein bestimmtes Wort enthalten?
command-line
UAdapter
quelle
quelle
Antworten:
Mit der Kommandozeile haben Sie mehrere Möglichkeiten. Die 3, die ich am häufigsten benutze, sind ...
locate {part_of_word}
Dies setzt voraus, dass Ihre Ortungsdatenbank auf dem neuesten Stand ist. Sie können diese jedoch manuell aktualisieren mit:
sudo updatedb
grep
wie von dr_willis erklärt. Eine Bemerkung:-R
Nachgrep
auch in Verzeichnissen gesucht. Beispiel:find . -name '*{part_of_word}*' -print
Wo
.
befindet sich das Verzeichnis, in dem Sie sich gerade befinden, und*
ist ein Platzhalter.Oh und Sie können diese auch kombinieren. Beispiel:
locate {something}|grep {some_part_of_something}|more
Wenn ich mich richtig erinnere:
locate
ist die schnellste (vorausgesetzt, Ihre Datenbank ist auf dem neuesten Stand) undfind
die langsamste. Undgrep
ist die komplexeste, aber auch die vielseitigste davon, da Sie Regex verwenden können.quelle
grep -R "was" "wo"
Beispiel:
grep -R hello /home
quelle
Das grep-Kommando wird üblicherweise dafür verwendet.
grep PATTERN filename
und grep kann einige sehr komplexe Suchvorgänge ausführen.
quelle
Sie können verwenden
grep
die Dateien auflisten zu enthalten ,word
in der angegebenendirectory
:Hier:
*
-R
Dateien in Unterverzeichnissen rekursiv durchsuchen.*
-i
Text ignorieren*
-l
Dateinamen anstelle von Dateiinhaltsteilen anzeigen. (Hinweis:-L
Zeigt Dateinamen an, die das Wort nicht enthalten.)Verwenden Sie
man grep
, um alle Optionen abzurufenquelle
-i
Führt eine Suche durch, bei der die Groß- und Kleinschreibung nicht berücksichtigt wird.