in reply to Launching an external command from Perl in Linux

As the system documentation states, you should be passing a list of strings, not barewords as you've done.

As well, I note that you are assigning the return value from system. From what you've named your variable, I don't think it returns what you think it does. From the documentation:

The return value is the exit status of the program as returned by the wait call. To get the actual exit value, shift right by eight (see below). See also "exec". This is not what you want to use to capture the output from a command, for that you should use merely backticks or qx//, as described in "`STRING`" in perlop. Return value of -1 indicates a failure to start the program or an error of the wait(2) system call (inspect $! for the reason).
  • Comment on Re: Launching an external command from Perl in Linux