On 4/6/06, Michael Goldshteyn <[EMAIL PROTECTED]> wrote: > That is, why does the output differ between: > > perl -e "print join(\"\n\",@{[`dir`]});" > > and > > dir | perl -pne ""
First of all, you haven't told us how it differs. Since dir is an os-specific command, most of the people on this list can't duplicate your results for themselves. On a side note, why do you mess around with with the anonymous array nonsense? print join("\n", `dir`); # perl -e "print join(\"\n\", `dir`);" yeilds the same result with half the complexity. That said, the only differnce I see between the piped system command and the backticks when I run your code is in the line spacing. This is because you've asked perl to double space the lines. As you can see from the output of dir or perl -e "print `dir`" # or for that true array experience: # perl -e "print @{[`dir`]}" dir returns newlines as part of the data stream. unless you chomp them off, they stay there. And when you join with \n, you add a second newline to the end of every element in the list. HTH, -- jay -------------------------------------------------- This email and attachment(s): [ ] blogable; [ x ] ask first; [ ] private and confidential daggerquill [at] gmail [dot] com http://www.tuaw.com http://www.dpguru.com http://www.engatiki.org values of β will give rise to dom!