linux修改密码点点点root,linux系统批量修改root用户密码
脚本目的:批量修改linux系统root用户密码
条件:必须是修改的用户是root,因为只有root才有权限使用passwd命令
说明:先把IP、用户、密码、端口信息写到old_info文件中,脚本从这个文件读取对应的信息,利用expect免交互登陆系统。将随机生成的8位密码修改为root用户新密码。然后将新密码保存到net_info文件中.
[root@wuke1 test1]# cat old_info
# ip user passwd port
#------------------------------------------------
192.168.1.181 root admini123 22
192.168.1.182 root admini123 22
[root@wuke1 test1]# cat change_pass.sh
#! /bin/bash
old_info=/opt/test1/old_info
new_info=/opt/test1/new_info
for ip in `awk '/^[^#]/{print $1}' $old_info`
do
user=`awk -v I=$ip '{if(I==$1)print $2}' $old_info`
pass=`awk -v I=$ip '{if(I==$1)print $3}' $old_info`
port=`awk -v I=$ip '{if(I==$1)print $4}' $old_info`
new_pass=`mkpasswd -l 8` #mkpasswd生成随机密码
echo "$ip $user $new_pass $port" >> $new_info
expect -c "
spawn ssh -p$port $user@$ip #spawn执行一个命令
set timeout 2 #设置超时
expect {
\"(yes/no)\" {send \"yes\r\";exp_continue}
\"password:\" {send \"$pass\r\";exp_continue}
\"$user@*\" {send \"echo \'$new_pass\' |passwd --stdin $user\r exit\r\";exp_continue}
}"
done
结果:
参数说明:
set:可以设置超时,也可以设置变量
timeout:expect超时等待时间,默认10S
spawn:执行一个命令
expect "":匹配输出的内容
exp_continue:继续执行下面匹配
\r:可以理解为回车
awk -v I="$ip":赋值变量
expect{...}:输入多行记录
本文章参考了:
http://lizhenliang.blog.51cto.com/7876557/1674791
linux修改密码点点点root,linux系统批量修改root用户密码相关推荐
- Win7如何利用系统放大镜工具更改用户密码
Win7如何利用系统放大镜工具更改用户密码 工具:win7原始光盘或镜像 放大镜工具magnify.exe cmd.exe 1. 首先,打开计算机电源,到系统登录界面 2. ...
- Windows系统批量修改文件后缀名/扩展名
查看文件 查看文件是否有扩展名,没有后缀名通过ctrl+E打开计算机,找到"工具"->"文件夹选项"->"查看",取消勾选& ...
- 批量重置域用户密码(一)
说到批量我们想到就是通过vbs.powershell.java等等来实现的方式,既然我们说到批量重置域用户密码,我想大家对这句话应该不陌生,因为网上有很多类似的做法,但是他们的做法跟我所实现的不一样, ...
- 魅蓝e android无限重启,魅蓝E怎么Root?魅蓝E一键ROOT教程(系统自带Root功能)
ROOT大家都不会陌生,一般是指安卓手机获得最高管理权限.那么魅蓝E怎么Root,今天小编主要详细介绍下魅蓝E快速ROOT图文教程.值得一提的是,魅蓝手机ROOT比较简单,因为系统自带了ROOT工具, ...
- Windows10系统批量获取所有用户名称、修改所有用户名称
一.需求说明 在项目开发过程中,需要获取到Windows系统的所有账号名称:需要对Windows账号进行批量修改用以适应业务需要.如下图所示: 二.思路分析 ①可以使用Windows自带的[wmic ...
- 安卓上传文件时修改文件名称_使用mmv命令批量修改文件名称
在 Linux 中使用 mv 命令可以重命名或者移动文件及目录,但是它不支持一次重命名多个文件.本文介绍mmv的使用方式,使用通配符模式移动/复制/追加/链接多个文件 环境 Centos7.7 安装m ...
- java 判断域密码到期提醒,Exchange Server 2010下,检测用户密码到期通知提醒脚本...
############################################ #Author:wangtingdong #For:检测AD密码过期时间并邮件通知 #Version:1.0 ...
- mongoose 批量修改字段_记一次脚本批量修改数据库字符集所埋下的一个坑及解决思路...
概述 前段时间参考网上教程用脚本批量修改了数据库的字符集,过了一天后业务反馈某个功能用不了,检查发现数据库字符类型的字段的默认值和说明全部为空,用实验测试了一下果然脚本存在一些bug,后续因此加班了一 ...
- 批量修改栏目名_Endnote中英文混排批量修改小技巧
来源:卓琳 赵一鸣 北医三院 临床流行病学和循证医学 如果参考文献量大,涉及多种类型和语言,手工附上参考文献非常低效,还是得借助文献管理软件.由于output style选择的不同,中文参考文献的书写 ...
最新文章
- pythonrequests发送数据_在python中使用requests 模拟浏览器发送请求数据的方法
- python设计一个动物类_python面向对象 动物园 例题
- ubuntu9.10上安装jdk5
- Linux 进程管理器 supervixor
- 洛谷P4463:calc(dp、拉格朗日插值)
- [网络]------TCP UDP HTTP Socket 区别
- android layer阴影,Android Layer-List实现自定义Shape阴影
- 滚蛋吧,2020的糟心事儿!2021,先“拼”为敬!
- java interface_Java中的接口(interface)
- 基于内容的图像检索系统 【多媒体系统导论大作业】
- C语言学习——极限值
- 众里寻她千百度,那人却在优衣库。
- 股票市场量化分析matlab,(特价书)MATLAB金融算法分析实战:基于机器学习的股票量化分析...
- java盘古分词_.NET使用Lucene.Net和盘古分词类库实现中文分词
- 计算机算法常用术语中英对照
- Proguardgui
- python之安装第三方库失败的解决方法
- kappa值大于多少有多重共线性
- 什么是伺服电机的电流环、速度环、位置环和带宽?
- [线段树][单调栈] BZOJ 4527 CF 407E: K-D-Sequence