我要写一个shell脚本在Ubuntu中运作,目的是为了给部署及运维人员批量创建用户,并将相应的用户分别加入部署组和运维组。
时间: 2024-12-21 13:30:04 浏览: 13
在Ubuntu系统中编写shell脚本来批量创建用户并分配到特定的组,可以按照以下步骤操作:
```bash
#!/bin/bash
# 定义一组需要创建的用户名和对应的组名
users=("user1" "user2" "user3") # 更改为你实际需要的用户列表
deploy_group="deploy" # 部署组名
ops_group="ops" # 运维组名
# 创建部署组和运维组,如果它们不存在
if ! getent group "$deploy_group" > /dev/null; then
sudo groupadd -r "$deploy_group"
fi
if ! getent group "$ops_group" > /dev/null; then
sudo groupadd -r "$ops_group"
fi
# 对于每个用户,检查该用户是否已存在,然后添加到相应组
for user in "${users[@]}"; do
if id -u $user &> /dev/null; then
echo "User '$user' already exists."
else
sudo useradd -m -g "$deploy_group" "$user" # 如果用户不存在,创建并将其加到部署组
sudo usermod -aG "$ops_group" "$user" # 然后再将其加到运维组
echo "User '$user' created and added to both groups."
fi
done
# 结束脚本
echo "User creation and group assignment completed."
阅读全文