【发布时间】:2019-08-15 11:40:00
【问题描述】:
我正在尝试制作一个简单的 Python 脚本,在使用“su”命令(或任何其他需要管理员权限或只需要密码才能执行的命令)后在命令行中输入给定密码。
我尝试为此使用 Subprocess 模块以及 pynput,但无法弄清楚。
import subprocess
import os
# os.system('su') # Tried using this too
process = subprocess.Popen('su', stdin=subprocess.PIPE, stdout=subprocess.PIPE)
process.stdin.write(b"password_to_enter")
print(process.communicate()[0])
process.stdin.close()
我希望在输入“su”命令后在给定的密码提示中输入“password_to_enter”,但事实并非如此。我也试过给它正确的密码,但还是不行。
我做错了什么?
PS:我在 Mac 上
【问题讨论】:
标签: python-3.x shell command-line subprocess output