python添加新用户与修改用户密码

发布时间:2019-11-05编辑:脚本学堂
分享一例python代码,用于添加新用户和修改用户的密码,学习下python中os模块与sys模块的用法,有需要的朋友参考下。

使用python代码修改用户密码,添加新用户。
代码:
 

复制代码 代码示例:

#-*- coding: utf-8 -*-
#/usr/bin/env python
#--www.jb200.com
import os
import os.path
import sys

#//
if len(sys.argv) < 3:
    print "脚本执行格式为‘python Script 用户 密码';请检查输入"
    sys.exit()
if sys.argv[1].startswith('--'):
    option = sys.argv[1][2:]
    if option == 'version': #当命令行参数为--version时
        print "Version 1.0"
    elif option == 'help':
        print """
This script is used to modify the user's password

Options include:
    -- version : Prints the version number
    -- help : Display this help """
    else:
        print 'Unknown option'
    sys.exit()

#//
username = sys.argv[1]
password = sys.argv[2]

print '输入的sys.arvg[1]是-->',username
print '输入的sys.arvg[2]是-->',password

passwd_file = open('/etc/passwd','r')
passwd_file_line = passwd_file.readlines()

#//
for usernameline in passwd_file_line:
    username_s = usernameline.split(':')[0]

    if username == username_s:
        print '输入的用户是',username_s
        os.system('echo %s | /usr/bin/passwd --stdin %s' %(password,username))
        passwd_file.close()
        sys.exit()

print "用户不存在,是否创建,创建输入yes,退出no"

command = raw_input('用户不存在,是否创建,请输入YES or NO-->')
command_s = command.lower()

if command_s == 'yes':
    os.system('useradd -d /home/%s %s' %(username,username))
    os.system('echo %s | /usr/bin/passwd --stdin %s' %(password,username))
    passwd_file.close()
    print "用户创建完成"
   
elif command_s == 'no':
    passwd_file.close()
    sys.exit()
   
else:
    print 'Unknown option,please Re-enter'