发布时间:2020-03-01 09:05:44来源:阅读:
最近通过exploring expect书籍,简单学了下expect脚本语言,这个脚本语言是tcl语言的扩展,用来解决一些工具无法自动交互的问题,如ssh登录时,无法在命令就指定密码等。下面是利用expect来实现管理多台服务器的简单例子:
#!/usr/bin/expect #purpose:auto run command on multiple servers #how to: mms <user> <cmd> #write by zhumaohai. #blog:http://www.centos.bz/ if {$argc < 2} { puts "usage: mms <user> <cmd>" exit 1 } #set servers set SERVERS {"192.168.0.100" "192.168.0.101" "192.168.0.102"} #set password set PASSWORDS(user1) "passwd1" set PASSWORDS(user2) "passwd2" #get virables set USER [lindex $argv 0] set CMD [lrange $argv 1 end] set passwd $PASSWORDS($USER) foreach x $SERVERS { eval spawn ssh -l $USER $x $CMD expect { "password" { send "$passwd " } "yes/no" { send "yes ";exp_continue; } } expect eof }
1、这里定义了三台服务器192.168.0.100 192.168.0.101 192.168.0.102,定义了用户user1的密码为passwd1,用户user2的密码为passwd2,假如脚本文件名为ms,用法为:
./ms 用户 命令
如./ms user1 date
2、在使用脚本时,请确认系统已经安装有expect命令,centos使用yum install expect安装,ubuntu使用apt-get install expect安装。
服务器安全工具下载
329.2K
BIGEMAP离线地图服务器下载
48.9M
C-Lodop云打印服务器(云打印工具)v4.115官方版
9.3M
Cerberus FTP Server Enterprise(FTP服务器软件) v12.0 免费版
28.7M
xp iis(Web服务器)6.0 中文版
13.4M
护卫神主机大师(服务器软件) v3.2 最新版
222MB
网络文件服务器下载
837.6KB
Apowersoft手机管理大师下载
68.3M
Emby Server(流媒体服务软件,)v4.0.2.0 破解版
101M
word字体(word字体服务软件) 2021 免费版
225MB
华为浏览器(网页浏览服务软件)v6.1.2.1500 最新版
85.7M
旺财流水账(财务管理软件) 9.2 免费版
4.85MB
雨燕投屏(投屏办公服务软件) 3.10.16.0 最新版
3.5M
3dmax场景助手下载
0.17MB
AutoHotkey下载
3.1M
FileZilla Server中文版 v0.9.60.0
2.14 MB
WampServer(php集成环境安装包)下载 v3.0.6中文
378.36 MB
endnote x7下载
114MB
realtek hd下载
77.7M
tftpd32下载
0.52MB
2019-12-06
扬天带无线网卡台式机可以搜索到SSID信号无法上网
Lenovo G470无法连接无线网络
IdeaPad Y510在windows XP中如何使用声卡的混音功能
Win7系统下如何连接本地打印机
如何删除录音笔DVR70中的录音文件?
按Fn 键从睡眠方式恢复之后,计算机显示器仍为黑屏
Zabbix3.0监控Apache2.4服务器状态
系统下摄像头无法打开,重新安装驱动无效的解决方案
Android 相机开发中的尺寸和方向问题