Der -maxdepth Option sollte vor -name stehen Option, wie unten.,
find . -maxdepth 1 -name "string" -print
Verwenden Sie find :
find . -maxdepth 1 -name "*string*" -print
Es findet alle Dateien im aktuellen Verzeichnis (löschen Sie maxdepth 1 wenn Sie es rekursiv wollen) mit "String" und wird es auf dem Bildschirm ausgeben.
Wenn Sie vermeiden möchten, dass eine Datei „:“ enthält, können Sie Folgendes eingeben:
find . -maxdepth 1 -name "*string*" ! -name "*:*" -print
Wenn Sie grep verwenden möchten (aber ich denke, es ist nicht notwendig, da Sie den Dateiinhalt nicht überprüfen möchten) Sie können verwenden:
ls | grep touch
Aber, ich wiederhole, find ist eine bessere und sauberere Lösung für Ihre Aufgabe.
Verwenden Sie grep wie folgt:
grep -R "touch" .
-R bedeutet Rückfall. Wenn Sie lieber nicht in die Unterverzeichnisse gehen möchten, überspringen Sie es.
-i bedeutet "Groß-/Kleinschreibung ignorieren". Vielleicht finden Sie das auch einen Versuch wert.
find $HOME -name "hello.c" -print
Dadurch wird der gesamte $HOME durchsucht (z.B. /home/username/ ) System für alle Dateien mit dem Namen „hello.c“ und zeigt ihre Pfadnamen an:
/Users/user/Downloads/hello.c
/Users/user/hello.c
Es wird jedoch nicht mit HELLO.C übereinstimmen oder HellO.C . Um die Groß-/Kleinschreibung zu berücksichtigen, übergeben Sie -iname Option wie folgt:
find $HOME -iname "hello.c" -print
Beispielausgaben:
/Users/user/Downloads/hello.c
/Users/user/Downloads/Y/Hello.C
/Users/user/Downloads/Z/HELLO.c
/Users/user/hello.c
Übergeben Sie die -type f Option, nur nach Dateien zu suchen:
find /dir/to/search -type f -iname "fooBar.conf.sample" -print
find $HOME -type f -iname "fooBar.conf.sample" -print
Die -iname funktioniert entweder mit dem GNU- oder BSD-Befehl (einschließlich OS X) Version find. Wenn Ihre Version des Find-Befehls -iname nicht unterstützt , versuchen Sie die folgende Syntax mit grep Befehl:
find $HOME | grep -i "hello.c"
find $HOME -name "*" -print | grep -i "hello.c"
ODER versuchen Sie es
find $HOME -name '[hH][eE][lL][lL][oO].[cC]' -print
Beispielausgaben:
/Users/user/Downloads/Z/HELLO.C
/Users/user/Downloads/Z/HEllO.c
/Users/user/Downloads/hello.c
/Users/user/hello.c