所以,这有点令人困惑,但本质上我使用的是 Django,我想实例化一个子进程来运行 perl 脚本。我读过这可以用
arg = "/some/file/path/"
pipe = subprocess.Popen(["./uireplace", arg], stdin=subprocess.PIPE)
当我在views.py中的适当函数中调用它时,它可以工作,但脚本需要一个sudo。然后我称之为
pipe = subprocess.Popen(["sudo","./uireplace", arg], stdin=subprocess.PIPE)
当我从终端在 python 中运行它时它可以工作,但是当它被网络上的随机用户调用时它不起作用。有什么方法可以自动输入该 sudo 的用户名和密码?问题是这不能通过提示来完成,所以它只是失败了。