linux设计一个shell脚本,添加一个新租为class1,然后添加属于这个组的30个用户,用户名的形式为stdxx,其中xx从01到30
时间: 2024-03-20 08:44:30 浏览: 70
linux 增加用户到组
可以按照以下步骤设计一个shell脚本来实现此需求:
1. 创建一个名为class1的新组,可以使用groupadd命令实现:
```
sudo groupadd class1
```
2. 创建30个新用户,用户名的形式为stdxx,其中xx从01到30,可以使用循环结构和useradd命令实现:
```
#!/bin/bash
for i in {1..30}
do
username="std$(printf "%02d" $i)" # 格式化数字为两位数,例如01、02、03等
password=$(openssl rand -base64 12) # 生成一个随机密码
useradd -m -s /bin/bash -p $(echo $password | openssl passwd -1 -stdin) $username # 创建新用户
usermod -a -G class1 $username # 将新用户添加到class1组中
done
```
上述脚本中,`-m`选项表示同时创建用户的home目录,`-s`选项表示指定用户的登录shell为bash,`-p`选项表示指定用户的密码为openssl生成的随机密码。
3. 保存脚本为一个.sh文件,例如`create_class1_users.sh`,并赋予执行权限:
```
chmod +x create_class1_users.sh
```
4. 执行脚本:
```
./create_class1_users.sh
```
执行完成后,即可成功创建30个用户名为std01到std30的新用户,并将它们添加到名为class1的新组中。
阅读全文