Fehlersuche

Komplexe reguläre Ausdrücke funktionieren selten auf Anhieb. Die Suche nach dem Fehler kostet Zeit und Nerven. Halten Sie Kaffee oder Cola bereit!

An der Kommandozeile sollte der erste Schritt immer das Voranstellen von echo sein. Möglicherweise isst die Shell mit und verschluckt einzelne Zeichen. Indem Sie sich den tatsächlich ausgeführten Befehl noch einmal anzeigen lassen, kommen Sie diesem Problem schnell auf die Schliche.

Doch auch in einem Skript tun Sie sich viel Gutes, indem Sie den gesuchten regulären Ausdruck, die Fundstelle oder zumindest Teile davon noch einmal anzeigen lassen. Nehmen Sie entsprechende Befehle ins Skript mit auf. Der Perl-Debugger erlaubt Ihnen das interaktive Austesten regulärer Ausdrücke.

Wenn das noch nicht hilft, zerlegen Sie den Ausdruck in kleinere Teile. Prüfen Sie, ob alle Bestandteile wirklich genau das tun, was Sie erwarten.

Ganz wichtig: Bleiben Sie geduldig.

Ausblick

In der gebotenen Kürze haben Sie nun einen Eindruck von den Fähigkeiten und Möglichkeiten, aber auch von der Komplexität der regulären Ausdrücke erhalten. Wenn Sie sich weiter damit beschäftigen wollen, hilft nur eines: üben, üben, üben. Die "Lektüre" bzw. das mühsame Auseinanderklauben der oft komplexen Regexps, die man in Skripten allenthalben findet, ist gleichzeitig lehrreich und frustrierend. Besser fährt man, wenn man reguläre Ausdrücke konsequent einsetzt. Spätestens dann, wenn Sie zwei ähnliche Suchen kurz hintereinander durchführen, fragen Sie sich: Wäre es mit einer Regexp nicht einfacher gegangen?

Weiterführende Informationen in englischer Sprache finden Sie in den Handbuchseiten zu grep und perlre. Die Perl-Dokumentation enthält darüber hinaus noch ein paar Tipps und Tricks, insbesondere auch zur Fehlersuche: man perltrap und man perlfaq6.

Glossar

ed

Der klassische Unix-Zeileneditor, bei dem man nicht wie bei modernen Texteditoren üblich eine ganze Datei auf einmal bearbeitet, sondern Befehle gibt, die sich auf eine oder mehrere bestimmte Zeilen beziehen.

CGI-Programmierung

Das Schreiben von Skripten oder auch kompilierten Programmen, die auf dem Web-Server abgelegt, beim Abruf einer entsprechenden Web-Seite aufgerufen werden und ein HTML-Dokument "on the fly" (dynamisch) generieren. Die Abkürzung steht für "Common Gateway Interface".

POSIX

Ein Versuch der Normierung typischer Unix-Funktionalitäten und -Definitionen im IEEE-Standard 1003.1. Die meisten Linux-Programme sind auf Wunsch kompatibel zu POSIX, enthalten oft jedoch noch zusätzliche Funktionen.

Locale

POSIX unterstützt die automatische Anpassung von Programmen an die lokalen Verhältnisse. Offensichtliches Beispiel ist die automatische Anzeige deutscher (oder genauer: muttersprachlicher) Übersetzungen für Systemmeldungen oder Handbuchseiten. Zur Locale gehören aber auch Dinge wie das ortsübliche Format für Zahlen, Zeit- oder Datumsangaben, Maßeinheiten oder die bevorzugte Papiergröße und natürlich die Information darüber, welche Teile des Zeichensatzes welche Funktion erfüllen – ob beispielsweise das Zeichen 196 ein Ä oder ein nicht druckbares Sonderzeichen darstellt.

Der Autor

Marc André Selig arbeitet je zur Hälfte als wissenschaftlicher Angestellter an der Universität Trier und als Arzt im Praktikum am Kreiskrankenhaus Schramberg. Wenn es die Zeit zulässt, beschäftigt er sich momentan vor allem mit der Programmierung Web-basierter Datenbanken auf diversen Unix-Plattformen.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Praktisch und nützlich: AWK
    Ein Unix-Rechner erschlägt den Anwender förmlich mit kleinen Helferlein, die ihm so gerne zu Diensten wären. Leider lassen sie sich nicht immer ganz problemlos bedienen. Die Textbearbeitungssprache AWK ist ein typisches Beispiel.
  • Zu Befehl: Suchen mit grep, egrep, fgrep, (b)zgrep
    Für die Suche nach Wörtern und Ausdrücken in Textdateien bieten sich die Kommandos der grep-Familie an. Als Ergebnis zeigen sie wahlweise die gefundenen Zeilen, die Namen der Dateien, in denen das Suchmuster vorkommt, oder die Anzahl der Treffer an.
  • The Answer Girl
    Dass der Computeralltag auch unter Linux immer wieder für Überraschungen gut ist, ist eher eine Binsenweisheit: Immer wieder funktionieren Dinge nicht oder nicht so, wie eigentlich angenommen. Das Answer-Girl im Linux-Magazin zeigt, wie man mit solchen Problemchen elegant fertig wird.
  • Gut gefiltert
    Zu den häufigsten Aufgaben bei der Arbeit am Rechner zählt das Durchstöbern von Texten nach Suchmustern. Icgrep bietet hier eine moderne, parallel arbeitende und Unicode-fähige Alternative zum klassischen Grep.
  • Erste Schritte mit Regular Expressions
    Computer erleichtern die Arbeit – man muss ihnen nur genau sagen, was sie tun sollen. Mit regulären Ausdrücken beschleunigen Sie das Suchen und Ersetzen von Zeichenketten auf elegante Art.
Kommentare

Infos zur Publikation

LU 10/2017: Daten retten & sichern

Digitale Ausgabe: Preis € 8,50
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

Lieber Linux oder Windows- Betriebssystem?
Sina Kaul, 13.10.2017 16:17, 2 Antworten
Hallo, bis jetzt hatte ich immer nur mit
IT-Kurse
Alice Trader, 26.09.2017 11:35, 2 Antworten
Hallo liebe Community, ich brauche Hilfe und bin sehr verzweifelt. Ih bin noch sehr neu in eure...
Backup mit KUP unter Suse 42.3
Horst Schwarz, 24.09.2017 13:16, 3 Antworten
Ich möchte auch wieder unter Suse 42.3 mit Kup meine Backup durchführen. Eine Installationsmöglic...
kein foto, etc. upload möglich, wo liegt mein fehler?
kerstin brums, 17.09.2017 22:08, 5 Antworten
moin, zum erstellen einer einfachen wordpress website kann ich keine fotos uploaden. vom rechne...
Arch Linux Netzwerkkonfigurationen
Franziska Schley, 15.09.2017 18:04, 0 Antworten
Moin liebe Linux community, ich habe momentan Probleme mit der Einstellung des Lan/Wlan in Arc...