Command Spawner
Project description
Command Spawner
Command Spawner is a non-blocking command runner library for Python.
Command Spawner runs commands at background and provides live output, error and finish data through the provided callback functions.
Example usage
# Triggered when received new stdout
def on_output(data):
print(f"Received data: {data}")
# Triggered when received new stderr
def on_error(data):
print(f"Received error: {data}")
# Triggered when the command execution has finished
def on_finished(data):
print(f"Finished with return code: {data}")
# Triggered when an exception has been thrown from the process module
def on_exception(exception):
print(f"Received exception: {exception}")
# or
raise exception
command_spawner = CommandSpawner(command="ping google.com",
on_output_callback=on_output, # Suppress output when it is not provided
on_error_callback=on_error, # Suppress error when it is not provided
on_finished_callback=on_finished, # Suppress return code when it is not provided
on_exception_callback=on_exception, # Raise exception on runtime when it is not provided
shell=False, # If True, the command will be executed through the shell (not recommended)
daemon=False # If True, current runtime will not wait for commands to be executed
)
# The method to run the process
command_spawner.run()
# The method to kill the current process
command_spawner.kill()
# The method to wait for the process to be finished
command_spawner.wait()
Enjoy!
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
command_spawner-1.1.1.tar.gz
(3.3 kB
view hashes)
Built Distribution
Close
Hashes for command_spawner-1.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9fe88344b67a3c78fcc392a511aad6954044ca93d543565d5d94cf7a63eaf16c |
|
MD5 | 5129c695c69d1d1a37ee792fc7ee5a32 |
|
BLAKE2b-256 | 99907090146fec10df02a480822ba608983867604962f2d676cd2ce6feff15a6 |