From: "James M. Lawrence" Date: 2008-12-19T19:34:21+09:00 Subject: [ruby-core:20695] [Bug #907] Various system() and backticks problems on Windows Bug #907: Various system() and backticks problems on Windows http://redmine.ruby-lang.org/issues/show/907 Author: James M. Lawrence Status: Open, Priority: Normal Category: core * system("x/y.bat") fails because it is interpreted as option /y being passed to command x. * system("y") fails when y.bat is in the current directory and "." is in PATH. "y" succeeds in the console shell window. Similar problems occur when passing relative or absolute paths. * system("c:/x/z", "1") fails to spawn c:/x/z.exe. * Variables are not expanded: system(%{ruby -e "p '%PATH%'"}) #=> "%PATH%" * Non-existent file in backticks `noexist` raises Errno::ENOENT. On Linux no exception is raised. Proposed spec: * http://github.com/quix/alt_system/tree/master/spec/system_spec.rb Current failures on the spec: * http://drake.rubyforge.org/tmp/system_spec_kernel.html A prototype patch which fits the spec: * http://drake.rubyforge.org/tmp/system_spec_alt.html * http://github.com/quix/alt_system/tree/master/lib/alt_system/alt_system.rb ---------------------------------------- http://redmine.ruby-lang.org