Ahoi,
eine schnelle Frage zwischendurch:
In Befehlen sehe ich häufig einen langen Strich, wie zum
Beispiel hier vor dem "grep":
lsmod | grep snd
Was bedeutet der, muß man den schreiben und wie kann man den schreiben ?
schön' Gruß
F-)
Ahoi,
eine schnelle Frage zwischendurch:
In Befehlen sehe ich häufig einen langen Strich, wie zum
Beispiel hier vor dem "grep":
lsmod | grep snd
Was bedeutet der, muß man den schreiben und wie kann man den schreiben ?
schön' Gruß
F-)
Das Pipe-Symbol sorgt dafür, dass die Standard-Ausgabe des Ausdrucks (wird sonst üblicherweise auf der Konsole ausgegeben) auf der linken Seite als die Standard-Eingabe für den Ausdruck auf der rechten Seite weitergeleitet wird.
Du könntest stattdessen auch auch eine Temporäre Datei verwenden (erst Umleiten von stdout in eine Datei, anschließend die Datei als stdin verwenden):
lsmod > /tmp/example
grep snd < /tmp/example
Kommt in diesem Fall zum selben Ergebnis, aber es gibt doch noch kleine Unterschiede: Bei Nutzung von Pipe erfolgt die Verarbeitung sofort. Falls die Verarbeitung auf der linken Seite also sehr lange dauert, dann wirst Du sehen, dass schon zwischendurch erste Resultate ausgegeben werden.
Du kannst auch längere Ketten mit Pipes bilden:
a | b | c | d | e