New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

sh

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

sh

Python subprocess replacement

  • 2.2.1
  • PyPI
  • Socket score

Maintainers
1

.. image:: https://raw.githubusercontent.com/amoffat/sh/master/images/logo-230.png :target: https://amoffat.github.com/sh :alt: Logo

If you are migrating from 1. to 2., please see MIGRATION.md**

|

.. image:: https://img.shields.io/pypi/v/sh.svg?style=flat-square :target: https://pypi.python.org/pypi/sh :alt: Version .. image:: https://img.shields.io/pypi/dm/sh.svg?style=flat-square :target: https://pypi.python.org/pypi/sh :alt: Downloads Status .. image:: https://img.shields.io/pypi/pyversions/sh.svg?style=flat-square :target: https://pypi.python.org/pypi/sh :alt: Python Versions .. image:: https://img.shields.io/coveralls/amoffat/sh.svg?style=flat-square :target: https://coveralls.io/r/amoffat/sh?branch=master :alt: Coverage Status

|

sh is a full-fledged subprocess replacement for Python 3.8 - 3.12, and PyPy that allows you to call any program as if it were a function:

.. code:: python

from sh import ifconfig
print(ifconfig("eth0"))

sh is not a collection of system commands implemented in Python.

sh relies on various Unix system calls and only works on Unix-like operating systems - Linux, macOS, BSDs etc. Specifically, Windows is not supported.

Complete documentation here <https://sh.readthedocs.io/>_

Installation

::

$> pip install sh

Support

  • Andrew Moffat <https://github.com/amoffat>_ - author/maintainer
  • Erik Cederstrand <https://github.com/ecederstrand>_ - maintainer

Developers

Testing

Tests are run in a docker container against all supported Python versions. To run, make the following target::

$> make test

To run a single test::

$> make test='FunctionalTests.test_background' test_one

Coverage

First run all of the tests::

$> SH_TESTS_RUNNING=1 coverage run --source=sh -m pytest

This will aggregate a .coverage. You may then visualize the report with::

$> coverage report

Or generate visual html files with::

$> coverage html

Which will create ./htmlcov/index.html that you may open in a web browser.

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc