Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Dec 2008 17:47:16 +0400
From:      rihad <rihad@mail.ru>
To:        Danny Braniss <danny@cs.huji.ac.il>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: preventing FIFO from EOF
Message-ID:  <49426B64.1070004@mail.ru>
In-Reply-To: <E1LB7zz-0006kU-SU@kabab.cs.huji.ac.il>
References:  <494235CA.2050101@mail.ru> <E1LB7zz-0006kU-SU@kabab.cs.huji.ac.il>

next in thread | previous in thread | raw e-mail | index | archive | help
Danny Braniss wrote:
>> $ 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.
>>
>> Thanks.
> 
> too easy
> n csh:
> 	while 1
> 		buffer -i /var/tmp/foo 
> 	end
> or in sh:
> 	while true; do
> 		buffer -i /var/tmp/foo
> 	done
> 

> Thanks, but I should have said that buffer must always run to never miss any data. 

The reason being that buffer's output gets fed into another program that 
shouldn't be restarted.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?49426B64.1070004>