Użycie bash do wykonania kodu w subprocess
subprocess
domyślnie używa /bin/sh
zamiast popularnego /bin/bash
więc niektóra składnia nie działa
import subprocess
print(subprocess.check_output("for num in {2..4}; do echo $num; done", shell=True).decode())
Wynik
{2..4}
Można użyć bash -c "command"
import subprocess
print(subprocess.check_output('bash -c "for num in {2..4}; do echo $num; done"', shell=True).decode())
Wynik
2
3
4
Lub można użyć executable='/bin/bash'
import subprocess
print(subprocess.check_output("for num in {2..4}; do echo $num; done", shell=True, executable='/bin/bash').decode())
Wynik
2
3
4
If you like it
Buy a Coffee
