Skip to main content

A simple tool to set environment variables before running a command

Project description

pysetenv is a simple Python-based program to allow users to set environment variables before executing a command, similar to the POSIX `env <https://pubs.opengroup.org/onlinepubs/9699919799/utilities/env.html>`__ command.

Why?

pysetenv is designed as a support package to help authors of other Python packages create command-line strings like you’d expect from sh or the env command. Generally, pysetenv will only be installed on Windows systems, with POSIX systems using sh or env. For example, in your setup.py, you would write:

setup(
    # ...
    install_requires=['pysetenv;platform_system=="Windows"'],
)

Then somewhere in your code, you could call pysetenv:

subprocess.call(['pysetenv', ...])

Command-line reference

Usage: pysetenv [OPTION]... [NAME=VALUE]... [--] [COMMAND [ARG]...]

pysetenv supports a subset of common options available to various implementations of env. It executes COMMAND with any supplied arguments (ARG) after modifying the environment as specified by the previous arguments. Any arguments of the form NAME=VALUE will set an environment variable NAME to the value of VALUE. If COMMAND is not specified, pysetenv will print the resulting environment instead.

In addition, the following options are supported:

  • -i: Ignore any environment variables inherited by this process

  • -u NAME: Unset the environment variable NAME

  • -h, --help: Show a help message and exit

  • --version: Show the current version and exit

As an extension to the env command, the options above and the variable definitions can be separated from the section for defining the command to run with --:

pysetenv -uFOO BAR=value -- echo hello

License

This project is licensed under the BSD 3-clause license.

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

pysetenv-1.0.1.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

pysetenv-1.0.1-py2.py3-none-any.whl (4.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file pysetenv-1.0.1.tar.gz.

File metadata

  • Download URL: pysetenv-1.0.1.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/2.7.15rc1

File hashes

Hashes for pysetenv-1.0.1.tar.gz
Algorithm Hash digest
SHA256 381a3e52e550e22618cbb8fffa889fcb9bbf2bf079e0a055c0eb03c9d8431580
MD5 d3b255ce3ce49d075646022c091578b3
BLAKE2b-256 07347fa97b0f9bf13cdcc756c0c5a93dc8967b4c0a5b75873adb93d731af0273

See more details on using hashes here.

File details

Details for the file pysetenv-1.0.1-py2.py3-none-any.whl.

File metadata

  • Download URL: pysetenv-1.0.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 4.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/2.7.15rc1

File hashes

Hashes for pysetenv-1.0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 d77afb3d53927bff0b8385ccfcf79db60ab024625582a5d5e221462e5029f927
MD5 9201b5a159860e38fe4028e065a1f9f1
BLAKE2b-256 fc25b294313d1d4245065a51d7a8878cbffbb801b842a2fe475e915378e85017

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