Bash Pipe: Unterschied zwischen den Versionen
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 | + | * 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
