title: Subprocess.Popen() => No output
body: <p>I am trying to run a Perl script from within Python, but I get no output in stdout(), while my script perfectly works when I run it from a shell. </p>
  
  <p>First, here is how I execute it from shell (assume I am on the right directory):</p>
  
  <pre><code>./vmlinkedclone.pl --server 192.168.20.2 --username root --password root 
  --vmbase_id 2 --vm_destination_id 41 --vmname_destination "clone-41-snapname" --snapname Snapname
  
  #=&gt; True, []
  #=&gt; or False, and a description of the error here 
  #=&gt; or an argument error
  </code></pre>
  
  <p>And here is how I try to call it from Python:</p>
  
  <pre><code>cmd = ['/home/user/workspace/vmlinkedclone.pl', '--server', '192.168.20.2', '--username', 'root', '--password', 'root' ,'--vmbase_id', '2', '--vm_destination_id', '41', '--vmname_destination', 'clone-41-snapname', '--snapname', 'Snapname']
  pipe = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
  result = pipe.stdout.read()
  
  print "Result : ",result
  #=&gt; Result :
  </code></pre>
  
  <p>Why do I get the desired output when I run my script from Shell, and get nothing from Python ? </p>