'\" t .\" Title: pipesz .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-09-02 .\" Manual: Dienstprogramme für Benutzer .\" Source: util-linux 2.42.3 .\" Language: English .\" .TH "PIPESZ" "1" "2026-09-02" "util\-linux 2.42.3" "Dienstprogramme für Benutzer" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "BEZEICHNUNG" pipesz \- Pipe\- und FIFO\-Puffergrößen festlegen oder untersuchen .SH "ÜBERSICHT" .sp \fBpipesz\fP [Optionen] [\fB\-\-set\fP \fIGröße\fP] [\-\-] [\fIBefehl\fP [\fIArgument\fP …]] .sp \fBpipesz\fP [Optionen] \fB\-\-get\fP .SH "BESCHREIBUNG" .sp Pipes und FIFOs verwalten einen internen Puffer, der zum Übertragen von Daten zwischen der Leseseite und der Schreibseite verwendet wird. In einigen Fällen kann die Standardgröße dieses internen Puffers den Erfordernissen nicht entsprechen. Dieses Programm bietet Möglichkeiten, die Größe dieser Puffer zu setzen und zu untersuchen. .sp Die Aktion \fB\-\-set\fP legt die Pipe\-Puffergrößen fest. Falls angegeben, muss sie mit einer expliziten \fIGröße\fP angegeben werden. Andernfalls wird sie implizit übernommen und die Größe wird aus \fI/proc/sys/fs/pipe\-max\-size\fP gelesen. Der Kernel kann die \fIGröße\fP wie in \fBfcntl\fP(2) beschrieben anpassen. Um die tatsächlich einzustellenden Puffergrößen anzuzeigen, verwenden Sie die Option \fB\-\-verbose\fP. Wenn weder \fB\-\-file\fP noch \fB\-\-fd\fP angegeben sind, wirkt \fB\-\-set\fP auf die Standardausgabe. .sp Die Option \fB\-\-set\fP ermöglicht die Übergabe eines optionalen \fIBefehls\fP zur Ausführung nach dem Festlegen der Pipe\-Puffergrößen. Dieser Befehl wird auf die angepassten Pipes angewendet. .sp Die Operation \fB\-\-get\fP gibt Daten in tabellarischer Form aus. Die erste Spalte enthält den Namen der Pipe, wie sie an \fBpipesz\fP übergeben wurde. Dateideskriptoren werden als »fd \fIN\fP« bezeichnet. Die zweite Spalte gibt die Größe des internen Puffers der Pipe in Bytes an. Die dritte Spalte enthält die Anzahl der aktuell in der Pipe ungelesenen Bytes. Die Spalten sind durch Tabulatoren (\*(Aq\(rst\*(Aq, ASCII 09h) getrennt. Bei Angabe von \fB\-\-verbose\fP wird zusätzlich ein beschreibender Header ausgegeben. Sind weder \fB\-\-file\fP noch \fB\-\-fd\fP angegeben, verwendet \fB\-\-get\fP die Standardeingabe. .sp Sofern die Option \fB\-\-check\fP nicht angegeben ist, wird \fBpipesz\fP \fInicht\fP beendet, wenn bei der Bearbeitung einer Datei oder eines Dateideskriptors ein Fehler auftritt. Dadurch kann \fBpipesz\fP generisch verwendet werden, ohne dass die Ausführung von Pipelines unterbrochen werden muss, falls sich der Typ bestimmter Dateien später ändert. Um Störungen zu minimieren, verhindert die Option \fB\-\-quiet\fP in diesen Fällen die Ausgabe von Warnungen. .sp Der Kernel begrenzt den Pipe\-Pufferspeicher, den nicht privilegierte Prozesse nutzen können (siehe \fBFEHLER\fP weiter unten). Der Kernel lehnt außerdem die Verkleinerung eines Pipe\-Pufferspeichers ab, wenn dies zu einem Verlust gepufferter Daten führen würde. Weitere Informationen finden Sie unter \fBpipe\fP(7). .sp \fBpipesz\fP unterstützt die Angabe mehrerer kurzer Optionen nacheinander, wie es bei \fBgetopt\fP(3) üblich ist. Das erste Argument ohne Option wird als \fIBefehl\fP interpretiert. Falls der \fIBefehl\fP mit »\-« beginnen könnte, verwenden Sie »\-\-«, um es von den Argumenten für \fBpipesz\fP zu trennen. In Shell\-Skripten empfiehlt sich die Verwendung von »\-\-«, wenn Parameter erweitert werden sollen. \fBpipesz\fP selbst liest nicht aus der Standardeingabe und schreibt nicht in die Standardausgabe, es sei denn, \fB\-\-get\fP, \fB\-\-help\fP oder \fB\-\-version\fP sind angegeben. .SH "OPTIONEN" .sp \fB\-g\fP, \fB\-\-get\fP .RS 4 schreibt die Größe der Pipe\-Puffer in die Standardausgabe und beendet das Programm. Falls weder \fB\-\-file\fP noch \fB\-\-fd\fP angegeben sind, wird versucht, aus der Standardeingabe zu lesen. die Angabe dieser Option zusammen mit \fB\-\-set\fP verursacht einen Fehler. .RE .sp \fB\-s\fP, \fB\-\-set\fP \fIGröße\fP .RS 4 legt die Größe der Pipe\-Puffer in Bytes fest. Diese Option kann mit den Suffixen \fBK\fP, \fBM\fP, \fBG\fP, \fBKiB\fP, \fBMiB\fP oder \fBGiB\fP versehen werden, um Vielfache von 1024 anzugeben.Bruchwerte werden in diesem Fall unterstützt. Weitere Suffixe werden unterstützt, sind aber wahrscheinlich nicht sinnvoll. Wird diese Option nicht angegeben, wird ein Standardwert verwendet, wie oben beschrieben. Wird diese Option mehrfach angegeben, wird eine Warnung ausgegeben und nur die zuletzt angegebene \fIGröße\fP verwendet. Als besonderes Verhalten wird die Standardausgabe angepasst, wenn weder \fB\-\-file\fP noch \fB\-\-fd\fP angegeben sind. Die Angabe dieser Option in Kombination mit \fB\-\-get\fP ist ein Fehler. .RE .sp \fB\-f\fP, \fB\-\-file\fP \fIPfad\fP .RS 4 setzt die Puffergröße der Pipe oder FIFO auf \fIPfad\fP, relativ zum aktuellen Arbeitsverzeichnis. Sie können für verschiedene Dateien diese Option mehrfach angeben, auch in Kombination mit \fB\-\-file\fP. Im Allgemeinen wird diese Option mit FIFOs verwendet, ist aber auch mit anonymen Pipes verwendbar, wie jenen in \fB/proc/PID/fd\fP. Änderungen der Puffergröße von FIFOs sind nach einem Systemneustart nicht mehr wirksam. .RE .sp \fB\-n\fP, \fB\-\-fd\fP \fINummer\fP .RS 4 setzt die an \fBpipesz\fP übergebene Puffergröße der Pipe oder FIFO auf die angegebene \fINummer\fP des Dateideskriptors. Sie können für verschiedene Dateideskriptoren diese Option mehrfach angeben, auch in Kombination mit \fB\-\-file\fP. Für häufig vorkommende Fälle werden kürzel angeboten: fd 0 (Standardeingabe, stdin), fd 1 (Standardausgabe, stdout) und fd 2 (Standardfehlerausgabe, stderr). Dies sollte in den meisten Fällen genügen. .RE .sp \fB\-i\fP, \fB\-\-stdin\fP .RS 4 Kürzel für \fB\-\-fd 0\fP. .RE .sp \fB\-o\fP, \fB\-\-stdout\fP .RS 4 Kürzel für \fB\-\-fd 1\fP. .RE .sp \fB\-e\fP, \fB\-\-stderr\fP .RS 4 Kürzel für \fB\-\-fd 2\fP. .RE .sp \fB\-c\fP, \fB\-\-check\fP .RS 4 beendet das Programm, ohne den \fIBefehl\fP auszuführen, falls beim Manipulieren einer Datei oder eines Dateideskriptors ein Fehler auftrat. Falls diese Option nicht angegeben ist, wird standardmäßig eine Warnung in die Standardfehlerausgabe geschrieben und die Programmausführung fortgesetzt. .RE .sp \fB\-q\fP, \fB\-\-quiet\fP .RS 4 schreibt keine nicht\-schwerwiegenden Diagnosemeldungen in die Standardfehlerausgabe. Die normale Ausgabe von \fB\-\-get\fP, \fB\-\-verbose\fP, \fB\-\-help\fP oder \fB\-\-version\fP wird hiervon nicht beeinflusst. .RE .sp \fB\-v\fP, \fB\-\-verbose\fP .RS 4 veranlasst \fBpipesz\fP, eine beschreibende Überschrift über der Tabelle auszugeben, wenn dies mit \fB\-\-get\fP angegeben wird. Wenn Sie es ansonsten angeben, schreibt \fBpipesz\fP die vom Kernel festgelegten tatsächlichen Puffergrößen in die Standardfehlerausgabe. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 zeigt einen Hilfetext an und beendet das Programm. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 zeigt Versionsinformationen an und beendet das Programm. .RE .SH "BEISPIELE" .sp \fBpipesz\fP \fBdd\fP if=\fIDatei\fP bs=1M | .\|.\|. .RS 4 führt \fBdd\fP(1) mit einer erweiterten Standard\-Ausgabepipe aus, was es ermöglicht, Kontextschalter beim Pipen um große Blöcke zu vermeiden. .RE .sp \fBpipesz\fP \-s1M \-cf \fI/run/mein\-dienst.fifo\fP .RS 4 Setzt die Pipe\-Puffergröße einer Dienst\-FIFO auf 1.048.576 Byte. Falls die Puffergröße nicht gesetzt werden kann, wird \fBpipesz\fP mit einem Fehler beendet. .RE .sp \fBecho\fP hello | \fBpipesz\fP \-g .RS 4 gibt die Größe der Pipe aus, die von der Shell verwendet wird, um Eingaben an \fBpipesz\fP zu übergeben. Da \fBpipesz\fP nicht aus der Standardeingabe liest, können auch 6 ungelesene Bytes in die Pipe gelangen, abhängig von relativen Timings. .RE .sp \fBfind\fP /proc/\fIPID\fP/fd \-exec \fBpipesz\fP \-gqf \*(Aq{}\*(Aq \*(Aq;\*(Aq .RS 4 gibt die Größe und Anzahl ungelesener Bytes aller Pipes aus, die von \fIPID\fP verwendet werden. Falls einige Pipes routinemäßig voll sind, kann \fBpipesz\fP einen Flaschenhals bei der Verarbeitung mildern. .RE .SH "ANMERKUNGEN" .sp Linux unterstützt die Größenanpassung von Pipe\-Puffern seit Kernel 2.6.35. In dieser Version wurde außerdem \fB/proc/sys/fs/pipe\-max\-size\fP eingeführt. .sp Dieses Programm verwendet \fBF_GETPIPE_SZ\fP/\fBF_SETPIPE_SZ\fP aus \fBfcntl\fP(2), um die Pipe\-Puffergrößen zu ermitteln und zu setzen. .sp Dieses Programm verwendet \fBFIONREAD\fP aus \fBioctl\fP(2), um die Menge der ungelesenen Daten in Pipes zu ermitteln. Falls dies aus irgendeinem Grund fehlschlägt, wird die Menge der ungelesenen Daten als 0 gemeldet. .SH "FEHLER" .sp Vor Linux 4.9 beeinträchtigten einige Fehler das Erzwingen bestimmter Ressourcenbeschränkungen beim Setzen von Pipe\-Puffergrößen. In \fBpipe\fP(7) finden Sie Details hierzu. .SH "AUTOREN" .sp .MTO "nwsharp\(atlive.com" "Nathan Sharp" "" .SH "SIEHE AUCH" .sp \fBpipe\fP(7) .SH "FEHLER MELDEN" .sp Nutzen Sie zum Melden von Fehlern das \c .URL "https://github.com/util\-linux/util\-linux/issues" "Fehlererfassungssystem" "." .SH "VERFÜGBARKEIT" .sp Der Befehl \fBpipesz\fP ist Teil des Pakets util\-linux, welches aus dem \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "Linux\-Kernel\-Archiv" "" heruntergeladen werden kann.