标签: python os.system
如果我从终端运行adduser testuser,命令会询问一些问题,比如密码。但是这段代码:
adduser testuser
import os a = os.system('useradd testuser')
存在错误代码0(没有问题)。但它没有问任何问题。这是为什么?我该如何解决它呢?我也尝试过subprocess,它做了同样的事情。
答案 0 :(得分:8)
这是因为adduser和useradd是两个不同的程序。前者询问互动问题,后者则没有。如果您需要交互式提示,请致电adduser,然后使用subprocess.call()进行操作。
adduser
useradd
subprocess.call()
答案 1 :(得分:2)
你的意思是它没有完成,或者你没有看到预期的结果。
另外,您是否注意到您在问题文本中说“adduser”而在python代码中是“useradd”?您可能会混淆这两个类似的命令!