On Sat, Aug 28, 2010 at 06:42:29PM +0400, Anonymous wrote: > Alexander Best <arun...@freebsd.org> writes:
> > i just had subversion complain about a broken pipe while piping its > > output through awk straight to head [1]. i decided to add a switch > > to head which will tell it to never close a pipe unless the input > > has stopped [2]. > You can do same with sh(1), e.g. > $ svn log | (IFS=; while read li; do [ $((i+=1)) -le 10 ] && echo "$li"; > done) > versus > $ svn log | (IFS=; while read li && [ $((i+=1)) -le 10 ]; do echo "$li"; > done) > ... > svn: Write error: Broken pipe Even easier (and avoiding mangling through read) is svn log | { head; cat >/dev/null; } Beware that the cat command will not necessarily get all of the input. head may buffer reads and it is unable to push the extra data back onto the pipe. > But I think subversion should I think Subversion should not print an error message for broken pipe on its stdout. > > there's probably a much more efficient way of discarding the input > > without closing the pipe unless the input ceased. it's just a 5 > > minute hack in order to see if people find the idea useful or not. > > ;) > Can you give an example of usefulness that does not involve subversion? -- Jilles Tjoelker _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"