shell脚本自动给用户配置密码
1个回答
展开全部
很高兴能回答你的问题,根据你的题意,给出如下回答:
配置单个用户的密码:
echo "PASSWORD_IN_PUT" | passwd --stdin USER
多个用户配置一个密码:
#!/bin/sh
FILE=/home/user.list # 用户名保存文件
while read line
do
echo "PASSWORD_IN_PUT" | passwd --stdin $line
done < $FILE
将如上内容保存到一个文件中,sh file 即可执行。
其中,FILE文件的格式为:
root
linux
test
ftp
# 等等,每个用户一行
多个用户配置多个密码:(必须有规律,没有规律无法用脚本自动执行)
#!/bin/sh
FILE=/home/user.lis
for item in `cat $FILE`
do
case $item in
root)
# 用户为 root
echo "PASSWORD_root" | passwd --stdin $item
;;
linux)
# 用户为 linux
echo "PASSWORD_linux" | passwd --stdin $item
;;
*)
# 用户为其他
echo "PASSWORD_other" | passwd --stdin $item
;;
esac
done
以上两个循环中,for、while 都可以使用和互换,只是写法不同,列出两种,供你参考。
case 语句用于进行多分支判断,你可以在 *) 这个默认语句前面再加入其他判断,格式参照上例即可。
归根结底,自动配置密码的核心主要是你会不会 passwd 命令中的 --stdin 选项。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询