CentOS使用expect批量远程执行脚本和命令
发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,我们有时可能会批量去操作服务器,比如批量在服务器上上传某个文件,安装软件,执行某个 命令和 脚本,重启服务,重启服务器等,如果人工去一台台操作的话会特别繁琐,并浪费人力。这时我们可以使用expect,
千家信息网最后更新 2024年11月26日CentOS使用expect批量远程执行脚本和命令
我们有时可能会批量去操作服务器,比如批量在服务器上上传某个文件,安装软件,执行某个 命令和 脚本,重启服务,重启服务器等,如果人工去一台台操作的话会特别繁琐,并浪费人力。 |
这时我们可以使用expect,向目标服务器上发送指令去实现批量操作。
下面的例子将在 centos上将一个文件,批量拷贝到其他服务商上,并执行相应的 命令
1. 在centos上安装expectyum install expect2. 编写expect 脚本 copyfilebatch.sh
下面的脚本将向内网IP为 192.168.0.102 至 192.168.0.112 的服务器分别拷贝一个rc.local文件,拷贝成功后,执行chmod命令,分别重启服务器
#!/usr/bin/expect -fset password rootpasswordfor {set i 102} {$i <= 112} {incr i} { set ip "192.168.0.$i" puts "$ip" spawn ssh -o StrictHostKeyChecking=no $ip set timeout 3 expect "root@$ip's password:" set timeout 3 send "$password\r" set timeout 3 send "exit\r" spawn scp /home/install/rc.local root@$ip:/etc/rc.d/rc.local set timeout 3 expect "root@$ip's password:" set timeout 3 send "$password\r" set timeout 3 send "exit\r" spawn ssh root@$ip expect { "*yes/no" { send "yes\r"; exp_continue} "*password:" { send "$password\r" } } expect "#*" #要执行的命令 send "chmod +x /etc/rc.d/rc.local\r" send "reboot\r" send "exit\r" expect eof}
以上就是本文的全部内容,希望对大家的学习有所帮助
原文来自: https://www.linuxprobe.com/expect-batch-command.html
服务
服务器
命令
脚本
拷贝
文件
面的
成功
繁琐
上将
人力
人工
例子
内容
原文
就是
指令
服务商
目标
软件
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
下列选项中属于软件开发工具的是
服务器防火墙拦截
网络安全法立法过程特点包括
安全链接sql数据库
浪潮边缘服务器白皮书
上海物联网智慧小区软件开发
电脑服务器卡怎么解决
岳阳软件开发哪家信誉好
服务器换cpu风险
浙江省信息技术数据库
公网服务器是怎么远程管理的
服务器读不出内存
ios软件开发招聘要求
软件开发的配置说明
数据库 云计算 大数据处理
网络安全工程师 知识技能
计算机网络安全山东学校
raid和服务器的区别
育碧服务器登陆不了怎么办
塔式服务器怎么连接
服务器的管理员权限
银行网络安全规划设计
数据库 关键字段
苹果id登陆美服服务器
浪潮边缘服务器白皮书
公司后台服务器管理方案
国家网络安全宣传周图解
品牌取名软件开发
生存战争服务器招人
广州儿童网络安全教育