Nick Coghlan <ncogh...@gmail.com> added the comment: That's a fair point, but I think it actually *improves* the argument for better helper functions, since we can have them automatically invoke shlex.quote() on all of the arguments:
def _shell_format(cmd, args, kwds): args = map(shlex.quote, args) kwds = {k:shlex.quote(v) for k, v in kwds} return cmd.format(*args, **kwds) def _invoke_shell(func, cmd, args, kwds): return func(_shell_format(cmd, args, kwds), shell=True) def format_shell_call(cmd, *args, kwds): return _shell_format(cmd, args, kwds) def shell_call(cmd, *args, **kwds): return _invoke_shell(subprocess.call, cmds, args, kwds) def check_shell_call(cmd, *args, **kwds): return _invoke_shell(subprocess.check_call, cmds, args, kwds) def check_shell_output(cmd, *args, **kwds): return _invoke_shell(subprocess.check_output, cmds, args, kwds) ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue13238> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com