Call a bash script with arguments in python | Rida Ayed

Call a bash script with arguments in python

/tmp/foo.py
arguments=" ".join(["foo", "bar"])
cmd="foo.sh"
subprocess.run(['/bin/env', cmd]+arguments)
/tmp/foo.sh
#!/bin/sh
for arg in "$@"; do
    echo $arg
done

Now calling python foo.py calls foo.sh with arguments.

Mind possible offtopic tasks like chmod +x, permissions etc.

Source