编写一个shell程序,要求批量锁定所有普通用户
时间: 2024-10-23 11:21:38 浏览: 17
实现MySQL定时批量检查表repair和优化表optimize table的shell脚本
编写一个shell脚本来批量锁定普通用户的Linux账户通常涉及到修改用户账户的状态,这需要使用`passwd`命令。由于权限限制,普通用户通常是无法直接锁定其他用户账户的,这需要root权限。下面是一个简单的示例,假设您有root权限,并且想要将用户列表保存在文件`users.txt`中:
```bash
#!/bin/bash
# 检查是否有权限
if [ "$(id -u)" -ne 0 ]; then
echo "当前用户需要为root才能运行此脚本"
exit 1
fi
# 确保用户列表存在
if [ ! -f users.txt ]; then
echo "用户列表文件users.txt不存在"
exit 1
fi
# 遍历用户列表并尝试锁定
while read user; do
# 使用passwd命令锁定用户,格式如:passwd -l <用户名>
if passwd -l "$user"; then
echo "已成功锁定用户 $user"
else
echo "锁定用户 $user 失败"
fi
done < users.txt
阅读全文