Hello, I'm experiencing some non-intuitive behavior when -- under Cygwin Perl -- calling system commands. The FAQ alludes to "differences" between Cygwin and systems like Linux.. this might be another one of these differences, or it might be dumb-user-error.
I have a solution I can live with. I just don't like not knowing what breaks my other attempts. I want to do the Perl equivalent of net use Q: \\\\e04-3000\\foo foo /user:foo This always works in bash, running 'net' and everything else is an argument. This works under Cygwin /bin/bash just fine. In Perl, you can call commands like so: system("net use Q: \\\\e04-3000\\foo foo /user:foo"); This fails, with the net command returning Error 67 (resource not found). Unfortunately there's no way it tells me what it THINKS it saw. This also fails: system("net", "use Q: \\\\e04-3000\\foo foo /user:foo"); *** This WORKS: system("net", "use", "Q:", "\\\\e04-3000\\foo", "foo", "/user:foo"); But it's *evil*. Since the above works, I try less evil-looking code: $cmd = "net use Q: \\\\e04-3000\\foo foo /user:foo" $mountcode = system (split(' ',$cmd)); to simulate the list that worked. This also fails. I've been executing code like this (all one string) all along under Linux & Perl. I'm assuming Perl's system() on Cygwin executes CMD.EXE as a subshell (this true?) and, well, this is "one of those differences" Any Thoughts? Thanks. -Scott -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/