1 filterkommandos
kraeml edited this page 2023-10-01 19:49:08 +00:00

Filterkommandos

In der Bash (einer Unix/Linux-Shell) sind Filterkommandos Befehle oder Programme, die dazu verwendet werden, Textdaten zu verarbeiten und zu filtern. Diese Befehle nehmen Text von der Standardeingabe (z. B. von einer vorherigen Ausgabe eines anderen Befehls) und geben den verarbeiteten Text auf die Standardausgabe aus oder speichern ihn in Dateien. Filterkommandos ermöglichen es, Daten zu durchsuchen, zu transformieren und zu extrahieren, um spezifische Informationen zu erhalten oder unerwünschte Daten zu entfernen.

Einige häufig verwendete Filterkommandos in der Bash sind:

  1. grep: Wird verwendet, um Zeilen aus Textdaten auszuwählen, die einem bestimmten Muster oder einer Zeichenfolge entsprechen.

  2. sed: Ein Stream-Editor, der Textdaten bearbeitet, indem er Muster sucht und ersetzt oder andere Textmanipulationen durchführt.

  3. awk: Ein mächtiger Textverarbeitungsbefehl, der Zeilen in Spalten aufteilen und komplexe Textverarbeitungsaufgaben durchführen kann.

  4. cut: Schneidet Textdaten anhand von Trennzeichen oder Zeichenpositionen in Spalten.

  5. sort: Sortiert Zeilen in Textdaten in aufsteigender oder absteigender Reihenfolge.

  6. uniq: Filtert aufeinanderfolgende identische Zeilen aus Textdaten und gibt nur eindeutige Zeilen aus.

  7. head und tail: Geben die ersten oder letzten Zeilen eines Textdokuments aus.

  8. tee: Liest von der Standardeingabe und schreibt sowohl auf die Standardeingabe als auch in eine oder mehrere Dateien.

Diese Filterkommandos können miteinander kombiniert werden, um komplexe Textverarbeitungsaufgaben in der Bash auszuführen, und sie sind nützlich für das Extrahieren, Formatieren oder Analysieren von Daten in der Shell-Umgebung.

Programme, die ihre Eingabe von der Standardeingabe lesen und ihre Ausgabe auf die Standardausgabe schreiben, werden Filterkommandos oder kurz »Filter« genannt. Ohne Eingabeumleitung lesen Filter also von der Tastatur. Um die Standardeingabe eines solchen Kommandos zu beenden, muss die Tastenkombination "Strg + d" eingegeben werden, die der Terminaltreiber als "Dateiende" interpretiert.

Hinweis

Dies gilt natürlich nur für die Eingabe über die Tastatur. Textdateien auf der Festplatte können selbstverständlich das Zeichen ctrl + d (ASCII 4) enthalten, ohne dass das System an dieser Stelle das Ende der Datei vermutet. Dies steht im Gegensatz zu einem anderen sehr beliebten Betriebssystem, das traditionell etwas eigenwillige Vorstellungen von der Bedeutung des Zeichens Ctrl + z (ASCII 26) hat, selbst wenn es in einer Textdatei vorkommt.