python尝试除语句 - 没有按预期工作

时间:2014-01-20 11:38:37

标签: python

我想检查用户是否存在,如果不存在则使用它。

def create_systemscripts_user():
    try:
        pwd.getpwnam('systemscripts')
    except KeyError:
        run('useradd -m -s /bin/bash systemscripts')
    return True

这很好。但问题是它试图创建用户,即使它存在,从而抛出错误

致命错误:run()在执行'useradd -m -s / bin / bash systemscripts'时遇到错误(返回代码9)

我在这里做错了什么?

2 个答案:

答案 0 :(得分:0)

这似乎是python的文档化“特征”(读取:bug)。 http://bugs.python.org/issue4261。根据此错误页面,错误在某些LDAP服务器条件下可重现。

您能否提供有关系统配置的更多信息?

答案 1 :(得分:0)

对不起。我的错。我试图使用结构运行pwd.getpwnam检查并认为它在远程计算机上正在进行;但它只是在本地运行。

再次感谢您对此进行调查。