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.2.tar.gz
(3.4 kB
view hashes)
Built Distribution
Close
Hashes for command_spawner-1.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e5b48e0dbe37775a2a0369266a3f4ed585d479e6382730f9d72fc6ca66ade55 |
|
MD5 | bcc4fa08ea0ac54f8ba4ea7f2d20d287 |
|
BLAKE2b-256 | 7aa99293502d77c7726f60f8e1345b71c20d7fa57bef0e63e60eb0ecfd65e2ce |