我想用python脚本升级我的linux系统。但我不知道如何将Y或Enter发送到控制台。
这是我的代码:
sudo_password = 'password'
command = 'apt-get update'
os.system('echo %s|sudo -S %s' % (sudo_password, command))
command = 'apt-get upgrade'
os.system('echo %s|sudo -S %s' % (sudo_password, command))
编辑:
我想自动运行脚本,因此我不想使用raw_input()或input()。
答案 0 :(得分:1)
使用toValue
功能
e.g。
raw_input
答案 1 :(得分:1)
或者,您可以将-y
参数添加到apt-get
命令中。像这样:
...
command = 'apt-get upgrade -y'
...
答案 2 :(得分:0)
如果你想回答“' y'对于所有apt-get提示,请考虑通过command = 'apt-get update|yes'
os.system('echo %s|sudo -S %s' % (sudo_password, command))
command = 'apt-get upgrade|yes'
os.system('echo %s|sudo -S %s' % (sudo_password, command))
bash命令管道命令。
未经测试(你应该测试):
yes
frame1
手册页说明说:
重复输出包含所有指定字符串的行,或者' y'。