Befehl: xgrep
XGREP ist ein Programm für die Textsuche in Dateien ähnlich wie das
UNIX-Dienstprogramm GREP. Sie können mit XGREP folgendes tun:
- Anzeige der Zeilen in einer Datei, die eine bestimmtes Wort, Satz
oder Muster enthalten;
- zählen der Zeilen, in denen ein bestimmtes Muster auftritt, oder
erzeugen einer Liste der Dateien zu einem bestimmten Thema.
Syntax:
xgrep [-chlnsvyorx] Ausdruck [Dateien]
xgrep [/chlnsvyorx] Ausdruck [Dateien]
Ausdruck Der zu suchende Ausdruck, es können auch Klassen
sein.
xgrep -h Zeigt die Hilfe.
Optionen:
-c Nur Zahl der gefunden Zeilen ausgeben.
-h Keine Dateinamen.
-l Nur Dateinamen .
-n Zeilenzahl ausgeben.
-o Fehler an stdout – Fehlermeldungen werden zusammen mit der Stan-
dardausgabe umgeleitet.
-r Rekursive Suche in Unterverzeichnissen - sucht nach Dateien, nicht
nur im angegebenen Verzeichnis, sondern auch in allen Unterver-
zeichnissen dieses Verzeichnisses.
-s Keine Fehlermeldung über unzugänglichen Dateien.
-v Nicht-übereinstimmenden Zeilen - "invertiert" das Ergebnis jeder
Übereinstimmung.
-x Keine Magie: Alle Operatoren benötigen '\'. Die Option -x bewirkt,
daß die üblichen Sonderzeichen:
. [ * + ? ^ $ standardmäßig als Literale geparst werden.
Beispielsweise sind die folgenden Befehle gleichwertig:
xgrep "p\[0] \* 3" test.c
xgrep -x "p[0] * 3" test.c
Alle regulären Ausdrucksoperatoren sind weiterhin zugänglich, müssen
aber mit einem \ (Backslash) beginnen.
-y Groß-/Kleinschreibung nicht beachten – Beim Abgleich wird nicht
zwischen Groß- und Kleinschreibung unterschieden.
Zwei weitere Optionen werden als Aliasse für andere Optionen unter-
stützt:
-d Ist ein Alias für -r.
-i Ist ein Alias für -y.
Kommentar:
Wie GREP funktioniert XGREP am besten mit einfachen Textdateien:
Dateien, die keine Binärdaten oder Nicht-ASCII-Steuerzeichen enthalten
und in Zeilen oder Datensätze unterteilt sind, die mit einem "\n"
(Newline) enden.
XGREP unterstützt Textdateien sowohl im UNIX- (LF) als auch im MS-DOS-
Format (CR, LF).
In XGREP kann der Doppelpunkt (:) verwendet werden, um auf vordefi-
nierte Klassen zu verweisen. Die zwölf vordefinierten Klassen und ihre
Definitionen lauten wie folgt:
ID Name Beschreibung Klasse ASCII Bereiche:
:a alpha alphabetisch [A-Za-z] 65-90,97-122
:c cntrl Steuerung 0-31,127
:d digit Ziffern [0-9] 48-57
:g graph Grafik [!-˜] 33-126
:l lower Kleinbuchstaben [a-z] 97-122
:n alnum alphanumerisch [0-9A-Za-z] 48-57,65-90,97-122
:p punct Satzzeichen [!-/:-@[-`{-˜] 33-47,58-64,91-96, 123-126
:s space Leerzeichen 9-13,32
:t print druckbar [ -˜] 32-126
:u upper Großbuchstaben [A-Z] 65-90
:x xdigit Hex-Zahlen [0-9A-Fa-f] 48-57,65-70,97-102
:z ascii 0-127
Zeichen um den Kontext zu spezifizieren:
^ Zeilenanfang
$ Zeilenende
. Wildcard
[] Zeichenklasse
[^] umgekehrte Zeichenklasse
\ Zitieren des nächsten Zeichens
Wiederholungen:
* 0 oder mehrmals
+ 1 oder mehrmals
? 0 oder einmal
\{m\} m-mal
\{m,\} m-mal oder mehr
\{m,u\} m bis u-mal
Für weitere Informationen über ":" und "Zeichen zur Angabe des
Kontextes" lesen Sie sich bitte XGREP.DOC.
XGREP hat folgende Beendigungswerte EXITCODES (ERRORLEVEL):
0 Mindestens einen Treffer gefunden.
1 Keine Einträge gefunden.
2 Fehler aufgetreten.
Weitere Informationen über XGREP finden Sie unter:
https://www.ibiblio.org/pub/micro/pc-stuff/freedos/util/unix
xgrep ODER:
https://gitlab.com/FreeDOS/unix/xgrep/-/blob/master/DOC/XGREP/
XGREP.DOC ODER:
C:\FREEDOS\DOC\XGREP\xgrep.doc
Beispiel:
xgrep "Hallo Welt" *.c
xgrep -c jill group
xgrep -l SCSI *.doc
xgrep widgets
xgrep -n widgets notes.txt
xgrep -n -rs widgets \*.txt \*.doc
Siehe auch:
errorlevel/exitcode
find
gnugrep
Copyright © 1994 Robert Nordier, Hilfeversion 2023
und 2025 von W. Spiegl.
Diese Datei ist abgeleitet vom FreeDOS Spezifikationen-HOWTO.
Vgl. auch die Datei H2Cpying bezüglich der Kopierbedingungen.