[TAG] 2c tip: filtering in-place
Jay R. Ashworth
jra at baylink.com
Mon Mar 22 18:14:32 MSK 2004
On Sun, Mar 21, 2004 at 10:21:27PM -0500, Ben Okopnik wrote:
> > Cause of what happens if the thing is interrupted in the middle, among
> > other thiings.
> Much like what happens with Kapil's solution if it's interrupted during
> the first pipe, with additional complications if it's interrupted during
> the second.
Actually, if Kapil's solution is interrupted in the middle, you have a
half processed input file. At least you still *have* some file.
> > > > Doesn't that still depend on order of evaluation by the shell? Is that
> > > > defined?
> > >
> > > Well, yes....
> > >
> > > 1. buffer < foo
> > > 2. | filer is acted upon
> > > 3. Resultant output to file
> > Well, not necessarily.
> > A shell could (un)reasonably decide to evaluate the output redirection
> > (ie: stomp on the file) before the buffer program can read it. At
> > best, it might be a race condition between the two sides of the pipe.
> Uh, not any shell that contains a _working_ implementation of IPC. One
> that's broken, certainly. Chances are that if time ran backwards, it
> probably wouldn't work too well either...
Every shell programing I've read in 20 years warns againts that
construct, precisely because most shells *will* set up the redirect
first and stomp the output file. As for the pipeline, I believe that
most shells exec the last component first. Maybe bash has changed
that; I remember a warning about it in the Bourne book.
> > I don't think, intuitively, that it's at all reliable, where as I think
> > the dd approach probably is.
> Please state the mean and the average probabilities and the relevant
> confidence levels for the accuracy of your intuitive approach. The data
> generated in the course of your study may or may not be used as grounds
> for questioning during your exam. :)
Ok, I've taked the rifle out of the box under my chair and assembled
it. Where's the ammo?
Jay R. Ashworth jra at baylink.com
Member of the Technical Staff Baylink RFC 2100
The Suncoast Freenet The Things I Think
Tampa Bay, Florida http://baylink.pitas.com +1 727 647 1274
"They had engineers in my day, too." -- Perry Vance Nelson
More information about the TAG