6.39. Grep-2.5.3

Das Paket Grep enthält Programme zum Durchsuchen von Dateien.

Geschätzte Kompilierzeit: 0.1 SBU
Etwa Benötigter Speicherplatz: 7.2 MB

6.39.1. Installation von Grep

Die aktuelle Version von Grep ist leider an vielen Stellen fehlerhaft, insbesondere bei der Unterstützung von Multibyte-Locales. Der folgende Sammelpatch aus dem Debian-Projekt behebt einige dieser Fehler, verbessert die Zahl der erfolgreichen Tests und vebessert die Arbeitsgeschwindigkeit in UTF-8-Locales:

patch -Np1 -i ../grep-2.5.3-debian_fixes-1.patch

Die Upstream-Entwickler haben in den neuesten Test-Skripten Teile der Dokumentation verbessert und einige Tests sowie erwartete Ergebnisse geändert. Daraus folgt, dass nicht mehr so viele Testdurchläufe fehlschlagen:

patch -Np1 -i ../grep-2.5.3-upstream_fixes-1.patch

Bereiten Sie Grep zum Kompilieren vor:

./configure --prefix=/usr \
    --bindir=/bin \
    --without-included-regex

Die Bedeutung des configure-Parameters:

--without-included-regex

Die Prüfung in configure für die regex-Bibliothek von Glibc liefert falsche Ergebnisse, wenn für glibc-2.8 kompiliert wird. Durch diesen Parameter wird die Verwendung der glibc-eigenen regex-Bibliothek erzwungen.

Kompilieren Sie das Paket:

make

Um die Ergebnisse zu testen, geben Sie folgendes ein:

make check || true

Die Tests foad1.sh und fmbtest.sh schlagen bekanntermaßen fehl. Mit dem Konstrukt „|| true“ soll verhindert werden, dass aufgrund von fehlgeschlagenen Tests keine automatisierten Build-Skripte erzeugt werden. Ein erfolgreicher Durchlauf sollte mit nur 2 von 14 Tests fehlschlagen. Wenn Sie sich jedoch die Ausgaben genauer ansehen, werden Sie bemerken, dass 40 Einzeltests fehlschlagen - dieses befinden sich alle in den seit der letzten Version neu hinzugekommenen Tests.

Installieren Sie das Paket:

make install

6.39.2. Inhalt von Grep

Installierte Programme: egrep, fgrep und grep

Kurze Beschreibungen

egrep

Gibt die Zeilen aus, die auf einen bestimmten regulären Ausdruck passen.

fgrep

Gibt die Zeilen aus, die auf eine Liste von festgelegten Zeichenketten passen.

grep

Gibt die Zeilen aus, die auf einen bestimmten einfachen regulären Ausdruck passen.