Als «pipe» getaggte Fragen

Eine Pipe ist eine Interprozessverbindung zwischen Dateideskriptoren zweier Prozesse. Mit der Funktion POSIX pipe () wird eine Pipe erstellt (von <unistd.h>). Shells erstellen Pipes zwischen Prozessen, wenn das "|" Symbol wird verwendet: "cmd1 | cmd2" leitet die Ausgabe von cmd1 an die Eingabe von cmd2 weiter. Verwenden Sie unter Windows CreatePipe (). Dieser Mechanismus leitet Standardeingabe, Standardausgabe und Standardfehler in den aufrufenden Prozess in .NET und Java um.

981
Wie kann ich stderr und nicht stdout leiten?

Ich habe ein Programm, das Informationen in stdoutund schreibt stderr, und ich muss grepdurchgehen, was zu stderr kommt , während ich stdout ignoriere . Ich kann es natürlich in 2 Schritten tun: command > /dev/null 2> temp.file grep 'something' temp.file aber ich würde es vorziehen, dies...

418
Pipe-Ausgabe und Capture-Exit-Status in Bash

Ich möchte einen Befehl mit langer Laufzeit in Bash ausführen und sowohl den Exit-Status erfassen als auch die Ausgabe abschlagen . Also mache ich das: command | tee out.txt ST=$? Das Problem ist, dass die Variable ST den Exit-Status von teeund nicht von Befehl erfasst . Wie kann ich das lösen?...

252
Wie erkenne ich, ob mein Shell-Skript durch eine Pipe läuft?

Wie erkenne ich in einem Shell-Skript, ob seine Standardausgabe an ein Terminal gesendet oder an einen anderen Prozess weitergeleitet wird? Das Beispiel: Ich möchte Escape-Codes hinzufügen, um die Ausgabe einzufärben, aber nur, wenn sie interaktiv ausgeführt werden, aber nicht, wenn sie...

205
Lesen Sie Werte aus einer Pipe in eine Shell-Variable

Ich versuche, bash dazu zu bringen, Daten von stdin zu verarbeiten, in die weitergeleitet wird, aber kein Glück. Was ich meine, ist keine der folgenden Arbeiten: echo "hello world" | test=($(< /dev/stdin)); echo test=$test test= echo "hello world" | read test; echo test=$test test= echo...

195
Wie verwende ich "jq" in einer Shell-Pipeline?

Ich kann mich jqin einer Shell-Pipeline nicht "normal" verhalten. Beispielsweise: $ curl -s https://api.github.com/users/octocat/repos | jq | cat führt dazu jq, dass der Hilfetext * einfach ausgedruckt wird. Das gleiche passiert, wenn ich versuche, die jqAusgabe in eine Datei umzuleiten : $ curl -s...

148
Wie öffne ich jede Datei in einem Ordner?

Ich habe ein Python-Skript parse.py, das im Skript eine Datei öffnet, z. B. Datei1, und dann etwas unternimmt, um möglicherweise die Gesamtzahl der Zeichen auszudrucken. filename = 'file1' f = open(filename, 'r') content = f.read() print filename, len(content) Im Moment verwende ich stdout, um das...