On Fri, 2002-03-22 at 12:57, Robert Landrum wrote:
> >That's is very weird, because this code doesn't seem to work:
> >
> >perl -e 'system("perl", " -e1") == 0 or die "oops"'
>
> Actually, that's not all that weird. Most shells take care of
> stripping out garbage before setting the argument list. Since
> system(LIST) doesn't use the shell, it's passing perl the literal "
> -e1" which perl won't recognize as a command line option (and
> correctly so in my opinion).
Actually this isn't standard behavior. I can't think of a situation
where I would want to use system to concatanate a string for me rather
than interpreting the string as an argument and act accordingly. If you
check 'perldoc -f system', this is exactly what system is supposed to do
when given a program name and a list of arguments, so it looks like
'systetm' may be buggy in the win32 version of perl
G