CentOS使用expect批量远程执行脚本和命令
发表于:2025-02-13 作者:千家信息网编辑
千家信息网最后更新 2025年02月13日,我们有时可能会批量去操作服务器,比如批量在服务器上上传某个文件,安装软件,执行某个 命令和 脚本,重启服务,重启服务器等,如果人工去一台台操作的话会特别繁琐,并浪费人力。这时我们可以使用expect,
千家信息网最后更新 2025年02月13日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安全错误
数据库的锁怎样保障安全
吉大18秋数据库应用技术
网络安全虚拟仿真实训室
昌平区定制软件开发品质保障
904数据库
日立电梯服务器数据格式
sql数据库中文版下载
广州捷付网络技术有限公司
oj梅奥数据库
敏捷软件开发供应商
软件开发自学c语言
网络安全设备预验收简报
软件开发企业有成本票吗
海南无纸化会议系统软件开发
搭建csgo服务器带宽需要多大
idea破解服务器
王军网络安全讲话原文
工业互联网智能科技
怎么查电脑使用数据库
北大法宝法律数据库优点
服务器管理的四大优势
软件技术跟软件开发有什么区别
网络技术和应用技术谁好
虚线软件开发
互联网大厂和银行科技子公司
学校开展网络安全教育视频
网络安全教育问题讨论记结果
粤桂三公游戏软件开发
江苏省委网络安全主管部门
服务器硬盘直接接主板
软件开发中如何理解用户参与设计