Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Dec 2008 17:42:18 +0400
From:      rihad <rihad@mail.ru>
To:        freebsd-hackers@freebsd.org
Subject:   Re: preventing FIFO from EOF
Message-ID:  <49426A3A.4070806@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.



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