- 使用Python编写一个程序,实现创建用户的功能
- 提示用户输入用户名
- 随机生成8位密码
- 创建用户并设置密码
- 将用户相关信息写入指定文件
import random
import subprocess
def get_username():
while True:
user_name = input("请输入用户名:")
rc = subprocess.run('id ' + user_name + '&> /dev/null', shell=True)
if rc.returncode != 0:
break
print("用户已经存在!")
return user_name
def randpass():
randps = ''
n = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
for i in range(8):
randps = randps + random.choice(n)
return randps
def create_user(user_name, randps):
subprocess.run('useradd ' + user_name, shell=True)
subprocess.run('echo ' + randps + ' | passwd --stdin ' + user_name, shell=True)
def wuser(user_name, randps):
with open('/root/passwd', 'a') as fobj:
fobj.writelines('%-15s%-8s\n' % (user_name, randps))
if __name__ == '__main__':
username = get_username()
passwd = randpass()
create_user(username, passwd)
wuser(username, passwd)