2301_81722008 2023-12-11 14:57 采纳率: 57.1%
浏览 4
已结题

创建用户,并且设置8位随机密码,包含字母和数字

#!/bin/bash
2 #获取用户名
3 read -p "输入用户名:" username
4 #验证用户是否存在
5 if id $username &>/dev/null; then
6 echo "该用户已存在,请重新输入!"
7 exit
8 fi
9
10 # 随机生成8位密码,并将其赋值给变量password

然后怎样做

  • 写回答

1条回答 默认 最新

  • 小孟多 2023-12-11 15:09
    关注

    在这里是一个使用正则表达式生成包含字母和数字的8位随机密码的Bash脚本示例。这个脚本首先获取用户名,然后验证用户是否存在,接着生成随机密码并将其赋值给变量password。

    #!/bin/bash
    
    # 获取用户名
    read -p "输入用户名:" username
    
    # 验证用户是否存在
    if id $username &>/dev/null; then
      echo "该用户已存在,请重新输入!"
      exit
    fi
    
    # 随机生成8位密码,并将其赋值给变量password
    password=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 8 | head -n 1)
    
    echo "为用户$username创建的密码为:$password"
    
    
    

    在这个脚本中,我们使用tr命令从/dev/urandom设备中读取随机字符,并使用fold命令将其折叠成8位长度,然后使用head命令提取第一行作为密码。这样可以保证密码包含字母和数字,并且是随机生成的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月19日
  • 已采纳回答 12月11日
  • 创建了问题 12月11日