python调用Linux终端使用Linux命令,需要一subprocess模块。
挂上一组代码:
import subprocess
def mypass():
mypass = 'lqs15037152766' # 输入root用户密码
return mypass
echo = subprocess.Popen(['echo', mypass()],
stdout=subprocess.PIPE,
)
sudo = subprocess.Popen(['sudo', '-S', 'iptables', '-L'],
stdin=echo.stdout,
stdout=subprocess.PIPE,
)
end_of_pipe = sudo.stdout
print
"Password ok \n Iptables Chains %s" % end_of_pipe.read()
command = "sudo apt-get install update "#在此输入Linux命令
back = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE,stderr=subprocess.PIPE).communicate()
print("back0----", back[0].decode())
print("back1----", back[1].decode())
代码执行的时候,会返回终端反馈
本组代码还无法进行持续输出
有兴趣的可以试试
附上博客链接