----- Original Message -----
> From: Danny Yoo <d...@hashcollision.org> > To: Peter Otten <__pete...@web.de> > Cc: Python Tutor Mailing List <tutor@python.org> > Sent: Monday, February 24, 2014 11:01 PM > Subject: Re: [Tutor] subprocess.call list vs. str argument > > Last comment (apologies for being so fragmented!). I don't know why > the literal strings there are raw there. Altogether, I'd expect: > > ############################################# > cmd1 = ['sphinx-apidoc', > '-f', > '-F', > '-H', title, > '-A', author, > '-V', version, > '-o', output_dir, > input_dir] > retcode = subprocess.call(cmd1, shell=False) > > ############################################# Hi Danny, Peter, Thanks for helping me. Danny, your example works indeed and it is also very readable. And now I do not need to use shell=True anymore. The raw strings were a leftover from earlier attempts that contained the entire path (not even relevant under Linux, but I still did it). Here is why I used "shell=True" before. Is it related to the file paths? cmd = (r'sphinx-apidoc ' r'-f -F ' r'-H "%(title)s" ' r'-A "%(author)s" ' r'-V "%(version)s" ' r'-o %(output_dir)s %(input_dir)s') % locals() retcode = subprocess.call(cmd) Traceback (most recent call last): File "/home/albertjan/Downloads/documenter.py", line 188, in <module> rst_to_html(input_dir, output_dir, title="Test", author=getpass.getuser(), version="1.0.0") File "/home/albertjan/Downloads/documenter.py", line 118, in rst_to_html retcode = subprocess.call(cmd) 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 1259, in _execute_child raise child_exception OSError: [Errno 2] No such file or directory regards, Albert-Jan _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor