preventing FIFO from EOF
rihad
rihad at mail.ru
Fri Dec 12 07:48:10 PST 2008
Christoph Mallon wrote:
> rihad schrieb:
>> $ mkfifo /var/tmp/foo
>> $ buffer -i /var/tmp/foo # misc/buffer
>> # in another console:
>> $ echo hi > /var/tmp/foo
>>
>> buffer prints hi and exits. I want it to keep reading and printing
>> indefinitely.
>>
>> Further experimentation revealed that I need two writers: one dummy
>> writer that just keeps /var/tmp/foo open for writing, and the other
>> doing the "real work". This way buffer wouldn't exit. But how to
>> emulate the dummy writer? It itself needs to block on something to
>> keep /var/tmp/foo open. Any clean way to do this in shell? Maybe the
>> solution is quite simple but isn't at the tip of my tongue.
>
> Maybe "tail -f" is what you are looking for.
>
>
You mean in place of buffer? buffer is there for a reason (so that
writers never block).
Something as simple as this:
$ sh < /dev/null > /var/tmp/kick 2>/dev/null
seems to block indefinitely, but exits as soon as I run
$ buffer -i /var/tmp/foo
(and buffer exits too)
More information about the freebsd-hackers
mailing list