Unix-Befehl zum Suchen nach einer Textzeichenfolge in allen Dateien

7

Wie bekomme ich Unix, um in ALLEN Dateien nach der Zeichenfolge "Hallo" zu suchen?

Ich habe Folgendes versucht, aber es funktioniert nicht:

%Vor%

Hat jemand noch andere Ideen?

Danke.

    
MorganR 25.06.2012, 10:07
quelle

3 Antworten

20

Vielleicht dieser?

%Vor%

EDIT: die Option 'n' wird natürlich nicht benötigt - sie zeigt einfach die Zeilennummern an und ich finde es nett. Die Option 'r' weist grep an, eine rekursive Suche in Verzeichnissen durchzuführen.

    
Ivaylo Strandjev 25.06.2012, 10:09
quelle
9

Verwenden Sie

%Vor%

Wenn Ihr grep -r unterstützt, (GNU grep tut das); Wenn nicht, benutze

%Vor%

Wenn Ihr find -exec mit + unterstützt, verwenden Sie andernfalls

%Vor%

Wenn Ihr find -printf unterstützt und Ihr xargs -0 unterstützt, oder

%Vor%

Wenn Ihr find nur -print0 unterstützt und Ihr xargs unterstützt -0 . In allen anderen Fällen greifen Sie auf

zurück %Vor%

Dies ist maximal kompatibel, mit dem Vorbehalt, dass bestimmte ungewöhnliche Dateinamen nicht grepped werden und manipulierte Dateinamen ein Sicherheitsrisiko darstellen können.

Beachten Sie, dass Sie root sein müssen, um sicher zu sein, dass alle Dateien durchsucht werden, und dass bei der Suche die Groß- / Kleinschreibung beachtet wird, es sei denn, Sie fügen -i zu grep hinzu.

    
Sorpigal 25.06.2012 11:10
quelle
2

Dies?

%Vor%     
HighKing 25.06.2012 10:15
quelle

Tags und Links