See the comment about 'args' in: http://docs.python.org/2/library/subprocess.html#frequently-used-arguments
which says: """args is required for all calls and should be a string, or a sequence of program arguments. Providing a sequence of arguments is generally preferred, as it allows the module to take care of any required escaping and quoting of arguments (e.g. to permit spaces in file names). If passing a single string, either shell must be True (see below) or else the string must simply name the program to be executed without specifying any arguments.""" This is an unfortunate pain-point in the subprocess API. Personally, I think that having subprocess.call optionally accept a single string is a wrong API decision because it causes so much confusion. You can tell there's a schizophrenia in that part of the documentation: it says something to the effect of, "If you want to use a single string, you have to use shell=True". And a few paragraphs later, it says, "But don't use shell=True!" I would strongly suggest not trying to use the single string interface to subprocess: it's too easy to get wrong. _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor