Skip to main content

A Python wrapper library for subprocess module.

Project description

subprocrunner

https://badge.fury.io/py/subprocrunner.svg https://img.shields.io/pypi/pyversions/subprocrunner.svg https://img.shields.io/travis/thombashi/subprocrunner/master.svg?label=Linux https://img.shields.io/appveyor/ci/thombashi/subprocrunner/master.svg?label=Windows https://coveralls.io/repos/github/thombashi/subprocrunner/badge.svg?branch=master

Summary

A Python wrapper library for subprocess module.

Examples

Execute a command

Sample Code:
from subprocrunner import SubprocessRunner

runner = SubprocessRunner("echo test")
print("command: {:s}".format(runner.command))
print("return code: {:d}".format(runner.run()))
print("stdout: {:s}".format(runner.stdout))

runner = SubprocessRunner("ls __not_exist_dir__")
print("command: {:s}".format(runner.command))
print("return code: {:d}".format(runner.run()))
print("stderr: {:s}".format(runner.stderr))
Output:
command: echo test
return code: 0
stdout: test

command: ls __not_exist_dir__
return code: 2
stderr: ls: cannot access '__not_exist_dir__': No such file or directory

dry run

Sample Code:
from subprocrunner import SubprocessRunner

runner = SubprocessRunner("echo test", dry_run=True)
print("command: {:s}".format(runner.command))
print("return code: {:d}".format(runner.run()))
print("stdout: {:s}".format(runner.stdout))
Output:
command: echo test
return code: 0
stdout:

Get execution command history

Sample Code:
from subprocrunner import SubprocessRunner

SubprocessRunner.clear_history()
SubprocessRunner.is_save_history = True

SubprocessRunner("echo hoge").run()
SubprocessRunner("echo foo").run()

print("\n".join(SubprocessRunner.get_history()))
Output:
echo hoge
echo foo

Get a command information

>>> from subprocrunner import Which
>>> which = Which("ls")
>>> which.is_exist()
True
>>> which.abspath()
'/usr/bin/ls'
>>> which
command=ls, is_exist=True, abspath=/usr/bin/ls

Installation

pip install subprocrunner

Dependencies

Python 2.7+ or 3.4+

Test dependencies

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

subprocrunner-0.13.0.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

subprocrunner-0.13.0-py2.py3-none-any.whl (6.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file subprocrunner-0.13.0.tar.gz.

File metadata

File hashes

Hashes for subprocrunner-0.13.0.tar.gz
Algorithm Hash digest
SHA256 df3713f72401eaa18375aaec40152deea2213bbd1589d09c29c5507da9c94be4
MD5 3ff3e4718722e66447096da3cbde0344
BLAKE2b-256 b7496e4c3b21db621a6a1c377be9ce3f9b2d58dd2a62d20b0553a357d607b101

See more details on using hashes here.

File details

Details for the file subprocrunner-0.13.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for subprocrunner-0.13.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 aa7332b0709f2a23c63897bde303b1a36fd5afc59f4f81f8b96d848e664ebce2
MD5 16890e8c32f0d85e0c06e4170f70da0d
BLAKE2b-256 1dfd92ed8f4f49ac534817fed1fc86f334a5561d64bdd9d8dcfe6db011c60a8a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page