Bunun gibi kullanabilirsiniz os.system():
import os
os.system('ls')
Veya senin durumunda:
os.system('echo 1 > /proc/sys/net/ipv4/ip_forward')
os.system('iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080')
Daha da iyisi, alt işlemin çağrısını kullanabilirsiniz, daha güvenli, daha güçlü ve muhtemelen daha hızlı:
from subprocess import call
call('echo "I like potatos"', shell=True)
Veya, kabuk çağırmadan:
call(['echo', 'I like potatos'])
Çıktıyı yakalamak istiyorsanız, bunu yapmanın bir yolu şudur:
import subprocess
cmd = ['echo', 'I like potatos']
proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
o, e = proc.communicate()
print('Output: ' + o.decode('ascii'))
print('Error: ' + e.decode('ascii'))
print('code: ' + str(proc.returncode))
Ben son derece bir ayar tavsiye timeoutin communicate, hem de onu çağrılırken alabilirsiniz istisnaları yakalamak için. Bu çok hataya açık bir koddur, bu nedenle hata oluşmasını beklemeli ve bunları uygun şekilde ele almalısınız.
https://docs.python.org/3/library/subprocess.html