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.12.2.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

subprocrunner-0.12.2-py2.py3-none-any.whl (6.7 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

File hashes

Hashes for subprocrunner-0.12.2.tar.gz
Algorithm Hash digest
SHA256 717dec789d063cca0569517eea867750adfe00b8300400623b2d75e015da9303
MD5 1d6b2363190f34a085e6b260db275aa7
BLAKE2b-256 770838991c200ea80772f48ea0d7e4cd3d50e785353791b7c697d22612f52b11

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for subprocrunner-0.12.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 5aea80c41cfbe8ee046d6e3b8771ac3f5cf7830c59f4c5a200405fadfc43961c
MD5 211a4e81063ffd3f16afdebbb63bfd8d
BLAKE2b-256 6b86c6f93af863e9c527b2ff15a72c48793ae893a9ef45161b46d4aa0734e730

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