-
PROHARDVER!

Új hozzászólás Aktív témák
-
orgonista
csendes tag
Sziasztok!
A gnuplotot szeretném egy shell szkriptből vezérelni egy named pipe-on keresztül linux alatt. Hogy a gnuplot ne lépjen ki az első átküldött utasítás után, a következő programot írtam, ami kiszűri az EOF-okat az adatfolyamból:
// eoftalanit.c
# include <stdio.h>
main() {
int a;
while (1) {
a = getc(stdin);
if (a == EOF) {
putc('\n', stdout);
} else {
putc(a, stdout);
}
}
}
Létrehozom a pipe-file-t:
$ mkfifo namedpipe
és ráakasztom a gnuplotot:
$ eoftalanit <namedpipe | gnuplot &
utána küldhetem az utasításokat bele:
$ echo 'test' >namedpipe
Eddig ok, az utasítás lefut és a programom várja a következő utasítást, ám közben a ciklus körbe-körbe jár. Mindig EOF-ot olvas és újsort küld a gnuplotnak, ezzel felzabál a kettő együtt kb. 90% proc. időt. Az érdekes számomra az, hogy az első getc(stdin) hívás még szépen vár míg küldök valamit, a ciklus csak ezután fut folyamatosan.
A kérdésem az, hogy hogyan érhetem el, hogy miután megkapja az EOF-ot az utasítás végén, térjen vissza a kiindulási állapotba és a getc() várjon türelemmel a következő nem EOF-ra?
köszönöm: orgonista
[Szerkesztve]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- 15.6-os 7.gen i5, Dell Latitude E5580 notebook olcsón!!!AkciÓÓ!
- Corsair Carbide Series 100R leárazás! AkciÓÓ!
- ÚJ HP EliteBook 6 G1a Ryzen 5 PRO 230 4.9GHz 32GB DDR5 1TB FHD+ 16:10 már jobbik kijelző, gar 2028
- Kingston HyperX Fury DDR4 16GB ram
- A legnagyobb FÉLÁRON!!! Samsung S9 ultra 14.6"-os tablet! AkciÓÓÓ
- AKCIÓ! HP Elitebook 8 G1i 14 FHD notebook - Ultra 5 235U 16GB DDR5 256GB SSD Intel IGP W11
- M5! KÉSZLETKISÖPRÉSI ULTRAAKCIÓ!!! SPACE BLACK MacBook Pro 14" M5!!! 10C/10G 16GB 512GB Gar!
- DELL PowerEdge R630 rack szerver - 2xE5-2650v3 (20 mag / 40 szál, 2.3/3.0GHz), 32GB RAM, 66921Ft+ÁFA
- Apple MacBook Pro 13 M2 (2022) 8GB / 256GB asztroszürke
- Xiaomi Redmi Note 14 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


