Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:shell_filter

Dies ist eine alte Version des Dokuments!


Inhaltsverzeichnis

Filterbefehle

Unter einem Filter versteht man Programm, die von stdin (Standardeingabe) lesen und auf stdout (Standardausgabe) schreiben können. Die meisten dieser Programme tun genau dies, wenn sie keinen Dateinamenparameter erhalten haben. Falls jedoch ein oder mehrere Dateinamenparameter übergeben worden sind, werden lediglich die dort genannten Dateien nacheinander verarbeitet, nicht aber stdin.

Um neben Dateien auch stdin zu verarbeiten, erlauben viele Programme die Angabe von - (einzelnes Minuszeichen bzw. Bindestrich) für stdin. Eine echte Datei mit diesem Namen kann von diesen Programmen nicht verarbeitet werden.

cat

Null-Filter. Datei ausgeben. Eigentlich concatenate: Mehrere Quellen verketten und ausgeben. Es ist genau das Gegenteil von split

cat file1 file2

tac

Zeilen einer Textdatei in umgekehrter Reihenfolge ausgeben

tac file

Die ersten 10 Zeilen von Datei file ausgeben:

head file

Die ersten drei Zeilen von Datei file ausgeben:

head -3 file
head -n +3 file

Alle Zeilen bis auf die letzten drei:

head -n -3 file

tail

Die letzten 10 Zeilen von Datei file ausgeben:

tail file

Die letzten 3 Zeilen von Datei file ausgeben:

tail -3 file

Die letzten 10 Kernelmeldungen anzeigen:

dmesg | tail

Logdatei /var/log/messages fortlaufend anzeigen:

tail -F /var/log/messages

1)

sort

Datei file alphabetisch sortieren

sort file

Verzeichnisse nach Größe (numerisch) sortiert anzeigen:

du -msx /usr/* | sort -n

uniq

aufeinander folgende gleiche Zeilen eliminieren

uniq file

aufeinander forlgende gleiche Zeilen zählen

uniq -c file

nl

Datei numeriert ausgeben

nl file
cat -n file

grep

Zeilen mit dem Muster „pat“ in Datei(en) ausgeben

grep "pat" file

Negation

grep -v "pat" file

Rekursiv (-r), case insensitive (-i) und mit Ausgabe Dateinamen (-H) Inhalte suchen

grep -riH "pat" dir

tr

Zeichen ersetzen (Arbeitet nur als Filter nicht mit Dateien)

cat vornamen | tr "aeiou" "eioua"

cat vornamen | tr "a-zA-Z" "A-Za-z"
1)
-F ist die Kurzform von –follow=name. Das ist besser als -f, da -F nicht dem Inode sondern dem Namen folgt
admin_grundlagen/shell_filter.1607086773.txt.gz · Zuletzt geändert: 2020/12/04 12:59 von holger_jakobs