CentOS使用expect批量远程执行脚本和命令
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,我们有时可能会批量去操作服务器,比如批量在服务器上上传某个文件,安装软件,执行某个 命令和 脚本,重启服务,重启服务器等,如果人工去一台台操作的话会特别繁琐,并浪费人力。这时我们可以使用expect,
千家信息网最后更新 2026年11月03日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安全错误
数据库的锁怎样保障安全
广州紫鲸互联网科技有限公司
科技互联网企业
互联网与科技发展
致骋互联网科技
迪茉互联网科技
远拓互联网科技
镁科技互联网资讯平台
互联网 科技馆
华中科技有哪些互联网大佬
北京大学互联网科技怎么样
互联网企业和科技型企业
互联网保险科技创业
西安小鹰速贷互联网科技有限公司
特约风豹互联网科技为什么扣费
上海科技产业互联网平台
美国互联网科技公司
图游互联网科技
上海同邻互联网科技有限公司规模
互联网界的黑科技
同城互联网络科技
咖啡网
高科技互联网
互联网科技资迅
互联网科技社
菲比寻常互联网科技
互联网科技股有哪些
中国最先进互联网科技公司
哈尔滨屹滨互联网科技有限公司
威龙国际互联网科技公司
全球科技与互联网公司市值变化