suche nach wörter in datei

mapiox

Tripel-As
Beiträge
176
Wie kann ich den Inhalt von Dateien nach bestimmten Wörtern durchsuchen?

Habe einen Ordner mit einigen *.php Dateien. Diese Dateien möchte ich nun alle nach einem bestimmten Wort durchsuchen.
 

Andre

Foren Gott
Beiträge
3.876
glaube...

das geht aber nicht nur mit grep allein....dazu muss er nen script schreiben?!?!
 

Zaphod

)=-=[MySelf]=-=(
Beiträge
86
Die grep-Hilfe sagt:
8><-------------------------------------------------------------------------------
Suche nach MUSTER in jeder DATEI oder der Standardeingabe.
Beispiel: grep -i &acute;Hallo Welt&acute; menu.h main.c

Auswahl und Interpretation regulärer Ausdrücke:
-E, --extended-regexp PATTERN is an extended regular expression
-F, --fixed-strings PATTERN is a set of newline-separated strings
-G, --basic-regexp PATTERN is a basic regular expression
-P, --perl-regexp PATTERN is a Perl regular expression
-e, --regexp=MUSTER MUSTER als regulären Ausdruck verwenden.
-f, --file=FILE MUSTER aus DATEI lesen.
-i, --ignore-case Unterschied zwischen Groß- und Kleinschreibung
ignorieren.
-w, --word-regexp MUSTER paßt nur auf ganze Wörter.
-x, --line-regexp MUSTER paßt nur auf ganze Zeilen.
-z, --null-data Eine Zeile endet mit Nullbyte, nicht Newline.

Verschiedenes:
-s, --no-messages Fehlermeldungen unterdrücken.
-v, --revert-match Nicht-passende Zeilen anzeigen.
-V, --version Versionnummer ausgeben und beenden.
--help Diese Hilfe ausgeben und beenden.
--mmap Wenn möglich, Eingabe in den Speicher mappen.

Output control:
-m, --max-count=NUM stop after NUM matches
-b, --byte-offset print the byte offset with output lines
-n, --line-number print line number with output lines
--line-buffered flush output on every line
-H, --with-filename print the filename for each match
-h, --no-filename suppress the prefixing filename on output
-o, --only-matching show only the part of a line matching PATTERN
-q, --quiet, --silent suppress all normal output
--binary-files=TYPE assume that binary files are TYPE
TYPE is &acute;binary&acute;, &acute;text&acute;, or &acute;without-match&acute;
-a, --text equivalent to --binary-files=text
-I equivalent to --binary-files=without-match
-d, --directories=ACTION how to handle directories
-b, --byte-offset print the byte offset with output lines
-n, --line-number print line number with output lines
--line-buffered flush output on every line
-H, --with-filename print the filename for each match
-h, --no-filename suppress the prefixing filename on output
-o, --only-matching show only the part of a line matching PATTERN
-q, --quiet, --silent suppress all normal output
--binary-files=TYPE assume that binary files are TYPE
TYPE is &acute;binary&acute;, &acute;text&acute;, or &acute;without-match&acute;
-a, --text equivalent to --binary-files=text
-I equivalent to --binary-files=without-match
-d, --directories=ACTION how to handle directories
ACTION is &acute;read&acute;, &acute;recurse&acute;, or &acute;skip&acute;
-D, --devices=ACTION how to handle devices, FIFOs and sockets
ACTION is &acute;read&acute; or &acute;skip&acute;
-R, -r, --recursive equivalent to --directories=recurse
--include=PATTERN files that match PATTERN will be examined
--exclude=PATTERN files that match PATTERN will be skipped.
--exclude-from=FILE files that match PATTERN in FILE will be skipped.
-L, --files-without-match only print FILE names containing no match
-l, --files-with-matches only print FILE names containing matches
-c, --count only print a count of matching lines per FILE
-Z, --null print 0 byte after FILE name

Context control:
-B, --before-context=NUM print NUM lines of leading context
-A, --after-context=NUM print NUM lines of trailing context
-C, --context=NUM print NUM lines of output context
-NUM same as --context=NUM
--color[=WHEN],
--colour[=WHEN] use markers to distinguish the matching string
WHEN may be `always&acute;, `never&acute; or `auto&acute;.
-U, --binary do not strip CR characters at EOL (MSDOS)
-u, --unix-byte-offsets report offsets as if CRs were not there (MSDOS)

`egrep&acute; means `grep -E&acute;. `fgrep&acute; means `grep -F&acute;.
With no FILE, or when FILE is -, read standard input. If less than
two FILEs given, assume -h. Exit status is 0 if match, 1 if no match,
and 2 if trouble.
-------------------------------------------------------------------------------><8
... ist alles drin, was er sucht - regular expression und Dateinamen angeben (Wildcards gehen) und ab die Reise, Ergebnis dann in eine Datei umleiten oder nach less pipen - für son Kleinkram muss man nicht scripten :D
 

mapiox

Tripel-As
Beiträge
176
Danke
grep ist gut ,hatte die ganze Zeit &quot;find&quot; im Kopf :rolleyes:

@andre

grep &quot;gesuchtes_wort&quot; *

durchsucht jede Datei im Verzeichnis
 

rup

Haudegen
Beiträge
627
Wenn es wenige Dateien sind:
grep &quot;Suchstring&quot; *.php


Wenn es viele Dateien (eventuell in Unterverzeichnissen) sind:

for i in `find -name &quot;*.php&quot;`
do
grep &quot;Suchstring&quot; $i
done
 

mapiox

Tripel-As
Beiträge
176
Danke ;)

Lohnt sich aber nur wenn man alle bzw mehrere Verzeichnisse durchsuchen will
 

Nightwing

User
Beiträge
108
@rup

wenn du schon find benutzt dann brauchst du nicht unbedingt eine for schleife drumrum basteln. geht auch so

find . -name &acute;*&acute; -type f -exec /bin/grep -e &quot;suchstring&quot; {} ;

ich finde das ist wesentlich schneller und praktischer :)
 

eXploed

Grünschnabel
Beiträge
6
ich habe das gleiche problem versteh aber nur bahnhof bei euch?!

ich suche ganz konkret diese zeile:

&FRPROZ IndependentTrue IndependentTrue video.bm /usr/txpom/web4video/Client.sh

und darunter solln break (absatz) und da will ich nen text hin haben, wie funzt das? bitte erklärt es n00b-verständlich :(
 

Ähnliche Themen

Bash Unter- Skript unabhängig starten

wget: Lädt bestimmte Dateitypen nicht

Wie sende ich eine Datei von Linux an einen eingesteckten Datenträger?

Ein Wort hinter einer bestimmten Zeichenfolge suchen und ausgeben

PHP funktioniert, nur Web-Aufrufe mit Optionen nicht.

Sucheingaben

unix in datei wörter suchen

,

linux in textdatei wörter suche

Oben