http://www.perlmonks.org?node_id=214494


in reply to System substitution2

Doesn't work correctly under 5.005 either! B*gger!
----------------------------------------------------
I don't have perl 5.005 to verify my speculation but have you tried using the other form of the system command? This allows you to avoid interpolation both within Perl and by the shell which greatly simplifies the quoting you need. The following works as is under 5.6.1 and may be better under 5.005?
#!perl -w $ENV{TYPE}='c:\scotts test\type me'; $new_debug_log='c:\scotts test\type me.bat'; my $rc = system('cmd.exe', '/c', $ENV{TYPE}, $new_debug_log );