Als «pipe» getaggte Fragen

Eine Unix-Pipe verbindet Dateideskriptoren zweier Prozesse. Eine Pipe wird mit der in <unistd.h> deklarierten POSIX pipe () -Funktion erstellt. Shells ermöglichen die Erstellung von Rohren zwischen Prozessen mit "|".

396
Schalten Sie die Pufferung in der Leitung aus

Ich habe ein Skript, das zwei Befehle aufruft: long_running_command | print_progress Der long_running_commandAusdruck ist ein Fortschritt, aber ich bin unzufrieden damit. Ich verwende print_progress, um es schöner zu machen (nämlich, ich drucke den Fortschritt in einer einzigen Zeile). Das Problem:...

148
Bash: Was macht "> |"?

Ich habe gerade gesehen, wie das aufgeschrieben wurde. $ some-command >| /tmp/output.txt Vertikale Pipes werden in Standard-Redirects verwendet, um die Ausgabe eines Befehls an einen anderen zu "leiten". Ist dies >|in der Tat völlig nutzlos, wie es auch >in diesem Szenario der Fall wäre...

146
Wie groß ist der Pipe Buffer?

Als Kommentar in Ich bin verwirrt, warum "| true" in einem Makefile den gleichen Effekt wie "|| true" hat. Benutzer cjm schrieb: Ein weiterer Grund, | zu vermeiden true ist, dass wenn der Befehl genügend Ausgabe erzeugt, um den Pipe-Puffer zu füllen, das Warten auf true zum Lesen blockiert wird....

98
Pseudodateien für temporäre Daten

Ich möchte häufig relativ kurze Zeichenfolgendaten (kann aber auch mehrere Zeilen umfassen) an Befehlszeilenprogramme übergeben, die wiederholt nur Eingaben aus Dateien (z. B. wdiff) akzeptieren. Sicher kann ich eine oder mehrere temporäre Dateien erstellen, die Zeichenfolge dort speichern und den...

89
In welcher Reihenfolge werden Pipe-Befehle ausgeführt?

Ich habe nie wirklich darüber nachgedacht, wie die Shell tatsächlich Pipe-Befehle ausführt. Ich habe immer gesagt, dass die „stdout eines Programms wird verrohrt in den stdin eines anderen,“ als eine Möglichkeit , über Rohre zu denken. Also dachte ich natürlich, dass im Falle von sagen wir, A | B,...

86
Prozessersetzung und Rohrleitung

Ich habe mich gefragt, wie ich das Folgende verstehen soll: Die Standardausgabe eines Befehls in die Standardausgabe eines anderen Befehls zu leiten, ist eine leistungsstarke Technik. Aber was ist, wenn Sie die Standardausgabe mehrerer Befehle weiterleiten müssen? Hier kommt die Prozesssubstitution...

74
Kann nicht in diff Pipe?

Ich wollte schlau sein und eine entfernte Datei mit einer lokalen Datei vergleichen, ohne sie vorher manuell herunterzuladen. Ich kann den Inhalt der Remote-Datei von erhalten ssh user@remote-host "cat path/file.name" Leiten Sie das jedoch an diff ssh user@remote-host "cat path/file.name" | diff...

51
Wofür wird der Befehl mknod verwendet?

Ich habe gerade angefangen, Ubuntu als mein Hauptbetriebssystem zu verwenden und wollte etwas über Dinge lernen, die ich nicht tun sollte und über die schlechten Dinge, die die Leute in der Vergangenheit getan haben. Ich bin auf diese E-Mail gestoßen, in der es um Horrorgeschichten ging, die UNIX-...

50
Sollte ich mich um unnötige Katzen kümmern?

Viele Befehlszeilenprogramme können ihre Eingabe entweder über eine Pipe oder als Dateinamenargument verwenden. Bei langen Shell-Skripten ist das Starten der Kette mit einem catbesser lesbar, insbesondere wenn der erste Befehl mehrzeilige Argumente benötigt. Vergleichen Sie sed s/bla/blaha/ data \...