Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:pipes_und_umleitungen

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
admin_grundlagen:pipes_und_umleitungen [2021/11/02 22:27]
127.0.0.1 Externe Bearbeitung
admin_grundlagen:pipes_und_umleitungen [2022/11/21 14:32] (aktuell)
ingo_wichmann [Kanäle]
Zeile 1: Zeile 1:
 +====== Kanäle ======
 +Datei ''​ausgabe.txt''​ mit Standard-Ausgabe des Befehls ''​ls -la''​ überschreiben:​
 +  ls -la > ausgabe.txt
 +  cat ausgabe.txt
 +-> Länge der Datei ''​ausgabe.txt''​ beachten!
 +
 +Standard-Ausgabe des Befehls ''​date''​ an Datei ''​ausgabe.txt''​ anhängen:
 +  date >> ausgabe.txt
 +  cat ausgabe.txt
 +
 +Standard-Eingabe:​
 +  wc -l ausgabe.txt
 +  wc -l < ausgabe.txt
 +  wc -l /etc/shadow
 +  wc -l < /etc/shadow
 +
 +Datei ''​fehler.txt''​ mit Fehlerausgabe des Befehls ''​ls gibtsnicht''​ überschreiben:​
 +  ls gibtsnicht 2> fehler.txt
 +
 +Fehlerausgabe des Befehls ​ ''​ls gibtsnicht''​ an Datei ''​fehler.txt''​ anhängen:
 +  ls gibtsnicht 2>> fehler.txt
 +
 +  ls . gibtsnicht 2> fehler.txt
 +  ls . gibtsnicht > ausgabe.txt
 +  ls . gibtsnicht >& beides.txt
 +  ls . gibtsnicht > beides.txt 2>&1
 +  ​
 +
 +
 +====== Pipes ======
 +Beispiele:
 +
 +  dpkg -l | wc -l
 +  dpkg -l | tee pakete.txt | less
 +
 +Doku: 
 +  * [[wpde>​Pipe (Informatik)]]
 +  * [[https://​www.moritz.systems/​blog/​mastering-unix-pipes-part-1/​|detaillierte,​ technische Beschreibung,​ wie Pipes implementiert sind]]
 +====== Filterbefehle ======
 +===== cat, tac & split =====
 +
 +Tabelle 8.2 im Skript
 +
 +  tar cz --directory /usr/share doc/ | split -b 10M - doc.tar.
 +  cat doc.tar.a* | tar tz | tail
 +
 +Benutzerliste rückwärts und mit Zeilennummern ;-)
 +  tac /etc/passwd
 +  cat -n /etc/passwd
 +===== head & tail =====
 +  head -n 20 /​etc/​services
 +  tail -n 20 /​etc/​services
 +Kapitel 8.3.2 im Skript lesen
 +
 +Übungen 8.8 - 8.11 im Skript
 +
 +===== od =====
 +  echo '​Müller'​ | od -a
 +
 +===== cut =====
 +  cut -d: -f 7 /etc/passwd
 +
 +===== sort =====
 +Tabelle 8.10 im Skript
 +
 +Übungen 8.22, 8.23, 8.26 im Skript
 +
 +===== uniq =====
 +
 +  find /​usr/​share/​doc -printf '​%y\n'​ | sort | uniq -c
 +  ​
 +===== grep =====
 +  cat /etc/passwd | grep bash
 +((
 +Moderne Alternativen:​
 +  * [[https://​packages.debian.org/​source/​sid/​rust-ripgrep|ripgrep]]
 +  * [[https://​packages.debian.org/​source/​bullseye/​ugrep|ugrep]]
 +))
 +
 +{{:​linux_grundlagen:​pasted:​20220310-151508.png}}
 +===== column =====
 +  column -t /etc/fstab
 +  ip -o link | column -t
 +  ip -o address | column -t
 +  column -s: -t /etc/passwd
 +
 +===== Pipeline =====
 +Statistik aller eingegebenen Befehle
 +  history | tr -s "​[[:​space:​]]"​ | cut -d" " -f 3- | sort | uniq -c| sort -nr
 +
 +====== Übung ======
 +
 +Wer errät, wofür dieser Befehl gut ist? (( https://​massimo-nazaria.github.io/​blog/​2019/​03/​02/​unix-philosophy-with-an-example.html ))
 +  seq 1 6 | shuf | head -n 1
 +
 +
 +
 ===== Vorbereitung des Beispiels ===== ===== Vorbereitung des Beispiels =====
 Testdaten ins Heimatverzeichnis kopieren: Testdaten ins Heimatverzeichnis kopieren:
admin_grundlagen/pipes_und_umleitungen.1635892024.txt.gz · Zuletzt geändert: 2021/11/02 22:27 von 127.0.0.1