Bash Pipe: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „=Die Pipe= Bei der Pipe wird der Standard Output des Kommandos links zum Standard Input des Kommandos recht. *cat < /etc/passwd | wc -l {{#drawio:std8}}“)
 
 
(8 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
=Die Pipe=
+
=Was ist das?=
Bei der Pipe wird der Standard Output des Kommandos links zum Standard Input des Kommandos recht.
+
* Die Bash-Pipe, symbolisiert durch das Vertikalstrich-Symbol "|", ermöglicht die Verbindung von mehreren Befehlen, indem die Ausgabe des vorherigen Befehls als Eingabe für den nächsten Befehl dient.
*cat < /etc/passwd | wc -l
+
* Durch die Verwendung von Pipes können komplexe Befehlsketten erstellt werden, bei denen die Ausgabe eines Befehls direkt an einen anderen Befehl weitergeleitet wird, um komplexe Aufgaben effizient zu erledigen.
 +
* Bei der Pipe wird der Standard Output des Kommandos links zum Standard Input des Kommandos rechts.
 +
* '''cat < /etc/passwd | wc -l'''
 +
 
 +
34
 +
=Symbolbild=
 
{{#drawio:std8}}
 
{{#drawio:std8}}
 +
 +
* Die Pipe übergibt nur den Datenstrom, daher kennt '''wc''' beim obrigen Befehl nicht den Dateinamen
 +
* '''wc -l /etc/passwd'''
 +
 +
34 /etc/passwd
 +
 +
= Aufgaben =
 +
 +
== Anzeigen von nicht Systembenutzern ==
 +
 +
* Benutzer, die vom System angelegt wurden sollen nicht angezeigt werden (mit Ausnahme von root)
 +
* Nur der Benutzername und das Homeverzeichnis soll zu sehen sein
 +
<!-- * '''grep -v nologin /etc/passwd | grep -v /bin/false ''' -->
 +
 +
== Anzeigen der IP Adressen ==
 +
 +
* der Befehl '''ip address show''' soll so gefiltert werden, dass am Ende nur die IP Adresse ausgegeben wird
 +
<!-- * '''ip a''' | grep "inet " | tr -s " " | cut -f 3 -d " " -->
 +
 +
== Größte Ordner anzeigen ==
 +
* Zeigen Sie mithilfe von '''du''' und '''sort''' die größten Ordner unter ''/etc/'' an
 +
* ...und die Top 10 Dateien unter ''/usr/bin''
 +
 +
== pgreppier ==
 +
 +
* '''pgrep''' zeigt nur PID und den Prozessnamen an
 +
* mit '''ps alx''' kann man sich auch Dinge wie die ID des Elternprozesses anzeigen
 +
* Kombinieren Sie '''ps alx''', '''head''' und '''grep''', um ein besseres pgrep zu bauen
 +
<!-- * '''vim pgreppier''' -->
 +
 +
<!-- <syntaxhighlight lang=bash> -->
 +
<!-- #!/bin/bash -->
 +
 +
<!-- ps alx | head -n 1 && ps alx | grep $1 | grep -v grep -->
 +
<!-- </syntaxhighlight> -->
 +
 +
<!-- * '''chmod +x pgreppier''' -->
 +
<!-- * '''./pgreppier sshd''' -->

Aktuelle Version vom 18. Juni 2024, 14:40 Uhr

Was ist das?

  • Die Bash-Pipe, symbolisiert durch das Vertikalstrich-Symbol "|", ermöglicht die Verbindung von mehreren Befehlen, indem die Ausgabe des vorherigen Befehls als Eingabe für den nächsten Befehl dient.
  • Durch die Verwendung von Pipes können komplexe Befehlsketten erstellt werden, bei denen die Ausgabe eines Befehls direkt an einen anderen Befehl weitergeleitet wird, um komplexe Aufgaben effizient zu erledigen.
  • Bei der Pipe wird der Standard Output des Kommandos links zum Standard Input des Kommandos rechts.
  • cat < /etc/passwd | wc -l
34

Symbolbild

  • Die Pipe übergibt nur den Datenstrom, daher kennt wc beim obrigen Befehl nicht den Dateinamen
  • wc -l /etc/passwd
34 /etc/passwd

Aufgaben

Anzeigen von nicht Systembenutzern

  • Benutzer, die vom System angelegt wurden sollen nicht angezeigt werden (mit Ausnahme von root)
  • Nur der Benutzername und das Homeverzeichnis soll zu sehen sein

Anzeigen der IP Adressen

  • der Befehl ip address show soll so gefiltert werden, dass am Ende nur die IP Adresse ausgegeben wird

Größte Ordner anzeigen

  • Zeigen Sie mithilfe von du und sort die größten Ordner unter /etc/ an
  • ...und die Top 10 Dateien unter /usr/bin

pgreppier

  • pgrep zeigt nur PID und den Prozessnamen an
  • mit ps alx kann man sich auch Dinge wie die ID des Elternprozesses anzeigen
  • Kombinieren Sie ps alx, head und grep, um ein besseres pgrep zu bauen