Python脚本:创建用户并生成随机密码

  1. 使用Python编写一个程序,实现创建用户的功能
  2. 提示用户输入用户名
  3. 随机生成8位密码
  4. 创建用户并设置密码
  5. 将用户相关信息写入指定文件
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)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值