Search on blog:

Use bash to run code in subprocess [GB]

subprocess as default uses /bin/sh instead of popular /bin/bash so some syntax doesn't work

import subprocess

print(subprocess.check_output("for num in {2..4}; do echo $num; done", shell=True).decode())

Result

{2..4}

You can run bash -c "command"

import subprocess

print(subprocess.check_output('bash -c "for num in {2..4}; do echo $num; done"', shell=True).decode())

Result

2
3
4

Or you can uses executable='/bin/bash'

import subprocess

print(subprocess.check_output("for num in {2..4}; do echo $num; done", shell=True, executable='/bin/bash').decode())

Result

2
3
4

« Page: 1 / 1 »