我正在使用Python 2.7和mac ports中最新的plumbum软件包。
总的来说,铅非常有用。虽然我有一点时间得到一个sudo'd命令工作。我已经为我想要运行的命令设置了我的/ etc / sudoers而不必提示,所以没关系。我可以毫无问题地手动运行命令。
但是,当我使用python尝试相同的时候:
sudo["/usr/local/some-magic-command here"]
sudo("-u " + sudoUser) # sudo user is userfoo
我收到以下错误:
plumbum.commands.processes.ProcessExecutionError:命令行:['/ usr / bin / sudo',' - u userfoo']
退出代码:1
Stderr:| sudo:未知用户:userfoo
用户确实存在,所以不确定这笔交易是什么。
评论
答案 0 :(得分:3)
没有" -u userfoo"用户。可能只是" userfoo"。注意:没有-u
前缀。尝试:
from plumbum.cmd import sudo
as_userfoo = sudo["-u", sudo_user]
print(as_userfoo("whoami"))