⇤ ← Revision 1 vom 2004-12-16 23:41:26
2377
Kommentar: missing edit-log entry for this revision
|
2379
converted to 1.6 markup
|
Gelöschter Text ist auf diese Art markiert. | Hinzugefügter Text ist auf diese Art markiert. |
Zeile 8: | Zeile 8: |
der größte Teil der folgenden Informationen ist aus der [http://www.linuxfibel.de Linuxfibel] - dort ist das Ganze schick erklärt ... | der größte Teil der folgenden Informationen ist aus der [[http://www.linuxfibel.de|Linuxfibel]] - dort ist das Ganze schick erklärt ... |
{title: Verwendung von grep, awk und sed} {author: Lars} {date: 17. Ausgust 2004} {version: 0.06} {abstract: äußerst kurze Einführung in die Verwendung regulärer Ausdrücke und verknüpfter Kommandozeilen-Tools}
Verwendung von 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
- ^
- 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:
- +
- 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: http://www.delorie.com/gnu/docs/sed/sed.html
- sed 's/ich/du/g'
- ersetzt alle Vorkommen von "ich" durch "du" (auch mehrere pro Zeile, wegen "g")
tr
zur Umsetzung von Sonderzeichen:
- tr "\000" "\t"
- ersetzt alle ASCII-Null-Zeichen durch Tabulatoren