大家好我正在学习python脚本而且我现在卡住了(使用wxpython for GUI)
我的问题是,我想运行build.system但是build.system在执行开始后要求系统密码,我尝试使用pexpect而我不能使用“sudo”。由于某些原因我不能使用sudo我也试过这个
subprocess.call("echo ******* | sudo -S ./build.system %s" % (str(mode)))
使用Pexpect:
child = pexpect.spawn("./build.system %s" % (str(mode)))
child.interact()
child.expect("[sudo] password for system:")
child.sendline("********")
我也尝试过linux命令。 输出我得到了:
INFO: building for board
INFO: keeping existing sandbox /home/system/sandbox
[sudo] password for system:
预期是:
INFO: building for Stretch board
INFO: keeping existing sandbox /home/qvisdvr/sandbox
[sudo] password for qvisdvr:********install alarms/alarms.h
install alarms/alarms_int.h
install ccm/ccm.h
install common/defines.h
[contd]
寻找好的建议,提前致谢,
答案 0 :(得分:0)
try:
proc = subprocess.Popen(["./build.system %s " % (str(mode))], shell=True)
proc.stdin.write("******")
proc.stdin.flush()
except AttributeError:
pass
这对我有用。