title: Execute shell script from python with a variable
body: <p>I have this code:</p>
  
  <pre><code>opts.info("Started domain %s (id=%d)" % (dom, domid))
  </code></pre>
  
  <p>I want to execute a shell script with the parameter <code>domid</code> from above.
  Something like this:</p>
  
  <pre><code>subprocess.call(['test.sh %d', domid])
  </code></pre>
  
  <p>How does it work?</p>
  
  <p>I've tried it with:</p>
  
  <pre><code>subprocess.call(['test.sh', domid])
  </code></pre>
  
  <p>But I get this error:</p>
  
  <pre><code>File "/usr/lib/xen-4.1/bin/xm", line 8, in &lt;module&gt;
      main.main(sys.argv)
    File "/usr/lib/xen-4.1/bin/../lib/python/xen/xm/main.py", line 3983, in main
      _, rc = _run_cmd(cmd, cmd_name, args)
    File "/usr/lib/xen-4.1/bin/../lib/python/xen/xm/main.py", line 4007, in _run_cmd
      return True, cmd(args)
    File "&lt;string&gt;", line 1, in &lt;lambda&gt;
    File "/usr/lib/xen-4.1/bin/../lib/python/xen/xm/main.py", line 1519, in xm_importcommand
      cmd.main([command] + args)
    File "/usr/lib/xen-4.1/bin/../lib/python/xen/xm/create.py", line 1562, in main
      dom = make_domain(opts, config)
    File "/usr/lib/xen-4.1/bin/../lib/python/xen/xm/create.py", line 1458, in make_domain
      subprocess.call(['test.sh', domid])
    File "/usr/lib/python2.7/subprocess.py", line 493, in call
      return Popen(*popenargs, **kwargs).wait()
    File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
      errread, errwrite)
    File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child
      raise child_exception
  TypeError: execv() arg 2 must contain only strings
  </code></pre>