This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author ncoghlan
Recipients ncoghlan
Date 2011-10-21.06:00:12
SpamBayes Score 6.6615953e-06
Marked as misclassified No
Message-id <1319176813.33.0.203455355645.issue13238@psf.upfronthosting.co.za>
In-reply-to
Content
I've been doing a few systems administration tasks with Python recently, and shell command invocation directly via the subprocess module is annoyingly clunky (even with the new convenience APIs).

Since subprocess needs to avoid the shell by default for security reasons, I suggest we add the following simple helper functions to shutil:

    def call(cmd, *args, **kwds):
        if args or kwds:
            cmd = cmd.format(*args, **kwds)
        return subprocess.call(cmd, shell=True)

    def check_call(cmd, *args, **kwds):
        if args or kwds:
            cmd = cmd.format(*args, **kwds)
        return subprocess.check_call(cmd, shell=True)

    def check_output(cmd, *args, **kwds):
        if args or kwds:
            cmd = cmd.format(*args, **kwds)
        return subprocess.check_output(cmd, shell=True)


Initially posted at:
http://code.activestate.com/recipes/577891-simple-invocation-of-shell-commands/

Of course, even if others agree in principle, documentation and tests are still needed before this change can go anywhere.
History
Date User Action Args
2011-10-21 06:00:13ncoghlansetrecipients: + ncoghlan
2011-10-21 06:00:13ncoghlansetmessageid: <1319176813.33.0.203455355645.issue13238@psf.upfronthosting.co.za>
2011-10-21 06:00:12ncoghlanlinkissue13238 messages
2011-10-21 06:00:12ncoghlancreate