编写一个shell程序adduser,添加一个新组class,然后添加属于这个组的30个用户,用户名的形式为yhxx,并设置密码为yhxx。其中xx从01到30(前九个是01-09,后10-30)。
时间: 2024-02-13 17:59:52 浏览: 72
好的,我可以帮你编写这个shell程序。请按照以下步骤操作:
1. 首先,你需要以root用户身份登录Linux系统。
2. 打开终端,输入以下命令来创建一个新组class:
```
sudo groupadd class
```
3. 接下来,使用for循环来创建属于class组的30个用户。输入以下命令:
```
for i in {1..30}; do sudo useradd -m -s /bin/bash -g class yh$(printf "%02d" $i); done
```
上述命令中,“-m”表示在创建用户时自动创建家目录,“-s”表示指定用户的shell程序为bash,“-g”表示将用户添加到class组中,“$(printf "%02d" $i)”表示格式化输出$i,输出两位数,不足两位前面补零。
4. 设置每个用户的密码为yhxx(其中xx为用户编号)。输入以下命令:
```
for i in {1..30}; do echo "yh$(printf "%02d" $i):yh$(printf "%02d" $i)" | sudo chpasswd; done
```
上述命令中,“echo "yh$(printf "%02d" $i):yh$(printf "%02d" $i)"”表示输出“yhxx:yhxx”,其中xx为用户编号,“|”表示将输出的内容传递给下一个命令,“sudo chpasswd”表示设置用户的密码。
5. 至此,程序已经完成。你可以通过输入以下命令来查看新建的用户:
```
sudo getent passwd | grep yh
```
上述命令中,“sudo getent passwd”表示查看所有用户,“grep yh”表示筛选出用户名中包含“yh”的用户。
阅读全文