PIPESZ(1) Comenzi utilizator PIPESZ(1) NUME pipesz - stabilete sau examineaza dimensiunile memoriilor tampon ale conductelor i FIFO REZUMAT pipesz [opiuni] [--set dimensiunea] [--] [comanda [argument] ...] pipesz [opiuni] --get DESCRIERE Conductele i FIFO-urile (conductele cu nume) menin o memorie tampon interna utilizata pentru transferul de date intre capatul de citire i cel de scriere. In unele cazuri, este posibil ca dimensiunea implicita a acestui tampon intern sa nu fie adecvata. Acest program ofera facilitai pentru a stabili i examina dimensiunea acestor memorii tampon. Operaia --set stabilete dimensiunile memoriilor tampon ale conductelor. In cazul in care este specificata, aceasta trebuie sa fie specificata cu o dimensiune explicita. In caz contrar, aceasta este implicita, iar dimensiunea este citita din /proc/sys/fs/pipe-max-size. Nucleul poate ajusta dimensiunea aa cum este descris in fcntl(2). Pentru a determina dimensiunile reale ale memoriilor tampon definite, utilizai opiunea --verbose. Daca nu sunt specificate nici --file, nici --fd, --set acioneaza la ieirea standard. Operaia --set permite executarea unei comenzi opionale dupa stabilirea dimensiunilor memoriei tampon de conducta. Aceasta comanda este executata cu conductele ajustate. Operaia --get produce date intr-un format tabelar. Prima coloana este numele conductei, aa cum a fost pasat la pipesz. Descriptorii de fiiere se numesc ,,fd N". A doua coloana este dimensiunea, in octei, a memoriei tampon interne a conductei. A treia coloana este numarul de octei necitit in prezent din conducta. Coloanele sunt separate de tabulatoare ("\t", ASCII 09h). In cazul in care se specifica --verbose, se emite, de asemenea, un antet descriptiv. Daca nu sunt specificate nici --file, nici --fd, --get acioneaza la intrarea standard. Cu excepia cazului in care este specificata opiunea --check, pipesz nu iese daca intalnete o eroare in timp ce manipuleaza un fiier sau un descriptor de fiier. Acest lucru permite ca pipesz sa fie utilizat in mod generic fara teama de a intrerupe execuia conductelor in cazul in care tipul anumitor fiiere ar fi schimbat ulterior. Pentru o perturbare minima, opiunea --quiet impiedica emiterea de avertismente in aceste cazuri. Nucleul impune limite asupra cantitaii de spaiu de memorie tampon pentru conducte pe care o pot utiliza procesele neprivilegiate, dar consultai ERORI mai jos. De asemenea, nucleul va refuza sa micoreze o memorie tampon a unei conducte in cazul in care acest lucru ar duce la pierderea datelor stocate in memoria tampon. Pentru detalii suplimentare, consultai pipe(7). pipesz accepta specificarea mai multor opiuni scurte consecutiv, in modul obinuit getopt(3). Primul argument fara opiune este interpretat ca fiind comanda. Daca comanda ar putea incepe cu ,,-", utilizai ,,--" pentru a o separa de argumentele pentru pipesz. In scripturile de tip shell, este o buna practica sa se utilizeze ,,--" atunci cand este vorba de extinderea parametrilor. pipesz insui nu citete de la intrarea standard i nu scrie la ieirea standard decat daca sunt specificate --get, --help sau --version. OPIUNI -g, --get Raporteaza dimensiunea memoriilor tampon ale conductelor la ieirea standard i iese. Ca un comportament special, daca nu sunt specificate nici --file, nici --fd, se examineaza intrarea standard. Este o eroare sa se specifice aceasta opiune in combinaie cu --set. -s, --set dimensiunea Stabilete dimensiunea memoriilor tampon ale conductelor, in octei. Aceasta opiune poate fi sufixata cu K, M, G, KiB, MiB sau GiB pentru a indica multiplii de 1024. In acest caz, sunt acceptate valorile fracionare. Sufixele suplimentare sunt acceptate, dar este puin probabil sa fie utile. Daca aceasta opiune nu este specificata, se utilizeaza o valoare implicita, aa cum este descris mai sus. In cazul in care aceasta opiune este specificata de mai multe ori, se emite un avertisment i se utilizeaza doar ultima dimensiune specificata. Ca un comportament special, daca nu sunt specificate nici --file, nici --fd, ieirea standard este ajustata. Specificarea acestei opiuni in combinaie cu --get constituie o eroare. -f, --file ruta Stabilete dimensiunea memoriei tampon a FIFO-ului sau a conductei din ruta, in raport cu directorul de lucru curent. Putei specifica aceasta opiune de mai multe ori pentru a afecta fiiere diferite i putei face acest lucru in combinaie cu --fd. In general, aceasta opiune este utilizata cu FIFO-uri, dar va funciona i cu conducte anonime, cum ar fi cele gasite in /proc/PID/fd. Modificarile aduse dimensiunii memoriei tampon a FIFO-urilor nu sunt pastrate de la o repornire a sistemului la alta. -n, --fd fd Stabilete dimensiunea memoriei tampon a conductei sau a FIFO-ului pasata la pipesz ca numar de descriptor de fiier specificat. Putei specifica aceasta opiune de mai multe ori pentru a afecta diferii descriptori de fiiere i putei face acest lucru in combinaie cu --file. Sunt furnizate opiuni prescurtate pentru cazurile obinuite de fd 0 (stdin, intrarea standard), fd 1 (stdout, ieirea standard) i fd 2 (stderr, ieirea de eroare standard). Acestea ar trebui sa fie suficiente in majoritatea cazurilor. -i, --stdin Abreviere pentru --fd 0. -o, --stdout Abreviere pentru --fd 1. -e, --stderr Abreviere pentru --fd 2. -c, --check Iese, fara a executa comanda, in caz de eroare in timpul manipularii unui fiier sau a unui descriptor de fiier. Comportamentul implicit in cazul in care acest lucru nu este specificat este de a emite un avertisment la ieirea de eroare standard i de a continua. -q, --quiet Nu diagnosticheaza erorile care nu sunt fatale la ieirea de eroare standard. Aceasta opiune nu afecteaza ieirea normala a --get, --verbose, --help sau --version. -v, --verbose Daca este specificata cu --get, pipesz va emite un antet descriptiv deasupra tabelului. In caz contrar, daca este specificata, pipesz va afia la ieirea de eroare standard dimensiunile actuale ale memoriilor tampon stabilite de nucleu. -h, --help Afieaza acest mesaj de ajutor i iese. -V, --version Afieaza versiunea i iese. EXEMPLE pipesz dd if=fiier bs=1M | ... Ruleaza dd(1) cu o conducta de ieire standard extinsa, permiandu-i sa evite schimbarile de context atunci cand se face o legatura intre blocuri mari. pipesz -s1M -cf /run/serviciul-meu.fifo Stabilete dimensiunea memoriei tampon a conductei unui serviciu FIFO la 1.048.576 octei. In cazul in care dimensiunea memoriei tampon nu a putut fi stabilita, pipesz iese cu o eroare. echo hello | pipesz -g Afieaza dimensiunea conductei utilizate de shell pentru a transmite datele de intrare catre pipesz. Deoarece pipesz nu citete intrarea standard, este posibil sa raporteze, de asemenea, 6 octei necitii in conducta, in funcie de timpii relativi. find /proc/PID/fd -exec pipesz -gqf '{}' ';' Afieaza dimensiunea i numarul de octei necitii ai tuturor conductelor utilizate de PID. In cazul in care unele conducte sunt in mod obinuit pline, pipesz ar putea fi capabila sa atenueze un blocaj de procesare. NOTE Linux suporta ajustarea dimensiunii memoriilor tampon ale conductelor incepand cu nucleul 2.6.35. Aceasta versiune a introdus, de asemenea, /proc/sys/fs/pipe-max-size. Acest program utilizeaza fcntl(2) F_GETPIPE_SZ/F_SETPIPE_SZ pentru a obine i a stabili dimensiunile memoriilor tampon ale conductelor. Acest program utilizeaza ioctl(2) FIONREAD pentru a raporta cantitatea de date necitite din conducte. Daca dintr-un motiv oarecare acest lucru eueaza, cantitatea de date necitite este raportata ca fiind 0. ERORI Inainte de Linux 4.9, unele erori afecteaza modul in care sunt aplicate anumite limite de resurse atunci cand se stabilesc dimensiunile memoriilor tampon pentru pipe. Consultai pipe(7) pentru detalii. AUTORI Nathan Sharp CONSULTAI I pipe(7) RAPORTAREA ERORILOR Pentru rapoarte de eroare, folosii sistemul de urmarire al erorilor . DISPONIBILITATE Comanda pipesz face parte din pachetul util-linux care poate fi descarcat de la Linux Kernel Archive . util-linux 2.41 2025-03-29 PIPESZ(1)