设计一个shell程序,添加一个新组为class1,然后添加属于这个组的30个用户,用户名的形式为stdxx,其中xx从01到30
封面图
•
2025-10-28
•
Linux
185
0
0
0
下面是一个简单的 **Shell 脚本**,用于完成以下任务: 1. 创建一个新组 `class1`; 2. 创建 30 个用户,用户名为 `std01` 到 `std30`; 3. 将这些用户添加到 `class1` 组中。 --- ### ✅ Shell 脚本:`create_users.sh` ```bash #!/bin/bash # 定义组名 GROUP_NAME="class1" # 检查组是否存在,如果不存在则创建 if ! getent group "$GROUP_NAME" > /dev/null; then sudo groupadd "$GROUP_NAME" echo "Group $GROUP_NAME created." else echo "Group $GROUP_NAME already exists." fi # 循环创建用户 std01 到 std30 for ((i=1; i<=30; i++)) do # 格式化数字为两位(如 01, 02,...30) username="std$(printf "%02d" $i)" # 检查用户是否存在 if ! id "$username" &>/dev/null; then sudo useradd -m -s /bin/bash "$username" sudo usermod -aG "$GROUP_NAME" "$username" echo "User $username created and added to group $GROUP_NAME." else echo "User $username already exists." fi done ``` --- ### 📌 使用说明: 1. **保存脚本**: 将上述内容保存为 `create_users.sh`。 2. **赋予执行权限**: ```bash chmod +x create_users.sh ``` 3. **以 root 权限运行**(因为需要创建用户和组): ```bash sudo ./create_users.sh ``` --- ### 🧠 注意事项: - 如果你使用的是 macOS 或某些系统,`useradd` 可能不可用。你可以改用 `dscl` 或其他命令,但上面的脚本适用于大多数 Linux 发行版(如 Ubuntu、CentOS 等)。 - 用户家目录会自动创建(`-m` 参数)。 - 密码没有设置,可以后续用 `passwd stdxx` 设置。 --- 如果你需要为每个用户设置密码,也可以在脚本中加入 `echo "password" | sudo passwd --stdin username`,但请注意安全问题。 是否需要我帮你扩展这个脚本,比如自动设置密码或生成配置文件?
上一篇:
一个实用的FSO-实时统计在线人数
下一篇:
瘦肉凤爪响螺汤 菜谱
标题录入,一次不能超过6条
留言
评论