C:\> perl -e "print map( \"$_\n\", glob(\"{A,B}{a,b}\"))"
For this particular example, I get identical results on Windows to that on UNIX. Note that Windows' braindead command line quote handling, or lack thereof, requires escaping the double quotes in the perl code and surrounding the entire thing with double quotes
Under Windows, each executable must do its own command-line globbing, Perl, like any Windows executable must then expand wildcards on its command line, which it seems to do by calling the standard Microsoft __setargv routine, which is far less powerful than even csh in terms of globbing.
On the other hand, the internal glob() routine is implemented specially for Windows, to behave like a UNIX shell. At least it is in ActiveState's Perl.
Cheers,
dmm
Just call me the Anti-Gates ...
|