Metainformationen zur Seite

Tipps zu grep, awk und sed

Der größte Teil der folgenden Informationen ist aus der Linuxfibel - dort ist das Ganze schick erklärt …

Reguläre Ausdrücke

Ausdruck Bedeutung
^ Zeilenanfang
$ Zeilenende
* beliebig viele Vorkommen des vorangegangenen Zeichens (auch null)
. genau ein beliebiges Zeichen
[] genau eins der eingeschlossenen Zeichen (auch Bereichsangaben sind erlaubt: [a-f])
[^] keins der eingeschlossenen Zeichen
\ das folgende Zeichen wird nicht als Sonderzeichen ausgewertet
\< Muster am Wortanfang suchen
\> Muster am Wortende suchen
\(..\) eingeschlossenes Muster vormerken; auf dieses kann später über \1 zugegriffen werden (bis zu neun Muster sind so nutzbar)
x\{m\} m-faches Auftreten des Zeichens x
x\{m,n\} mindestens m-, höchstens n-maliges Auftreten von x

Die folgenden Ausdrücke sind nur für egrep zulässig:

Ausdruck Bedeutung
+ mindestens ein Auftreten des vorangegangenen Zeichens
? höchstens ein Auftreten des vorangegangenen Zeichens
x|y entweder x oder y
(abc|xyz) entweder abc oder xyz

grep

Gefunden oder nicht?: Parameter -q setzen und per „$?“ den Rückgabewert abfragen (0 - gefunden; 1 - Muster nicht gefunden; 2 - Datei nicht gefunden) (bzw. eine bedingte Pipe mit && oder || verwenden)

Parameter:

  • -c: Anzahl der Zeilen, in denen das Muster gefunden wurde
  • -i: Groß/Kleinschreibung ignorieren
  • -l: nur die Dateinamen beim Finden ausgeben
  • -n: Ausgabe der Zeilennummer des Fundes
  • -s: unterdrückt die Fehlerausgaben (für Skripte)
  • -v: zeigt alle Zeilen an, die das Muster nicht enthalten
  • -w: das Muster muss ein einzelnes Wort sein
  • -A x: zeigt x Zeilen an, die dem Muster folgen
  • -B x: zeigt x Zeilen an, die dem Muster vorangehen

sed

Zum Nachschlagen fuer Beispiele: https://www.gnu.org/savannah-checkouts/gnu/sed/manual/sed.html

Ausdruck Bedeutung
sed 's/ich/du/g' ersetzt alle Vorkommen von „ich“ durch „du“ (auch mehrere pro Zeile, wegen „g“)

tr

Zur Umsetzung von Sonderzeichen:

Ausdruck Bedeutung
tr „\000“ „\t“ ersetzt alle ASCII-Null-Zeichen durch Tabulatoren