首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >20.32 expect脚本指定host和要同步的文件

20.32 expect脚本指定host和要同步的文件

作者头像
运维小白
发布于 2022-01-06 06:11:34
发布于 2022-01-06 06:11:34
41700
代码可运行
举报
文章被收录于专栏:运维小白运维小白
运行总次数:0
代码可运行

expect脚本指定host和要同步的文件

  • set timeout 定义超时时间(单位为 秒) -1 为永远不超时
  • 指定host和要同步的文件
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#!/usr/bin/expect
set passwd "123123a"
set host [lindex $argv 0]
set file [lindex $argv 1]
spawn rsync -av $file root@$host:$file
expect {
"yes/no" { send "yes\r"}
"password:" { send "$passwd\r" }
}
expect eof
  • 变量定义的文件地址,使用时,必须写绝对路径
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/02/09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Linux基础(day76)
20.31 expect脚本同步文件 expect脚本同步文件 在一台机器上把文件同步到多台机器上 自动同步文件 #!/usr/bin/expect set passwd "123456" spawn rsync -av root@192.168.133.132:/tmp/12.txt /tmp/ expect { "yes/no" { send "yes\r"} "password:" { send "$passwd\r" } } expect eof expect eof :只有spawn执行的命
运维小白
2018/03/29
7060
linux学习第七十篇:expect脚本同步文件,expect脚本指定host和要同步的文件,构建文件分发系统,批量远程执行命令
expect脚本同步文件 自动同步文件 #!/usr/bin/expect set passwd "123456" spawn rsync -av root@192.168.133.132:/tmp
用户1215343
2018/03/29
1.5K0
linux学习第七十篇:expect脚本同步文件,expect脚本指定host和要同步的文件,构建文件分发系统,批量远程执行命令
expect快速入门
expect是一个自动化交互式应用程序的工具,所以expect可以用来处理交互的命令。借助expect,我们可以将交互过程写在一个脚本上,使之自动化完成。形象的说,ssh登录,ftp登录等都符合交互的定义。expect含有利用正则表达式进行模式匹配以及通用的编程功能,允许简单的脚本智能地管理如下工具:telnet,ftp和ssh(这些工具都缺少编程的功能),宏以及其它程序。expect脚本的出现使得这些老的软件工具有了新的功能和更多的灵活性。
端碗吹水
2020/09/23
1.1K0
expect 构建分发文件系统 原
需求背景: 对于大公司而言,肯定时不时会有网站或者配置文件更新,而且使用的机器肯定也是好多台,少则几台,多则几十甚至上百台。所以,自动同步文件是至关重要的。
阿dai学长
2019/04/03
7150
学习笔记0620----shell项目(分发系统)
如今一些比较大的企业,大都使用了负载均衡,而有时因为一些程序要更改,或者有些bug要修改,快速更新代码等,如果仅是几台server的话,很简单,把已经改好的程序拷过去,或者rsync远程推送,再或者网上NFS共享一下就可以了;但如果有几十台几百台,那样的方法会太繁琐,此时就可以用expect来批量实现分发任务。
嘻哈记
2020/11/24
1.4K0
20.33 构建文件分发系统
#!/bin/bash for ip in cat ip.list do echo ip ./rsync.expect ip list.txt done
运维小白
2022/01/06
1.1K0
shell项目-分发系统-expect
一、什么是分发系统?(循序渐进) 服务上线,这个词应该不陌生,公司内部一般都会有很多服务器,随着业务的不断发展,我们需要不断的去调整服务器的各项配置来适配现在的需求,但是server很多不可能一台一台的去修改,浪费人工和时间,这时候我们需要一个系统,这个系统可以帮助我们把更新的配置更新到每台服务器。 二、远程登录 2.1 环境需求 模板机 线上的server 2.2 模板机配置 [root@zhdy-03 ~]# yum install -y expect 2.3 自动远程登录,执行命令 vim main
老七Linux
2018/05/09
1.5K0
【小项目】使用shell和expect实现简易的文件分发系统
所以分发系统就是用来完成以上这个需求的,分发系统需要完成的事情就是将需要上线的代码分发到这些线上服务器中。我们现在要做的就是实现这个分发系统,实现这个系统需要用到两个主要的东西就是shell和expect,通过shell结合expect可以编写一个简单的分发系统。
端碗吹水
2020/09/23
6660
shell expect权威指南和实战
我们通过Shell可以实现简单的控制流功能,如:循环、判断等。但是对于需要交互的场合则必须通过人工来干预,有时候我们可能会需要实现和交互程序如telnet服务器等进行交互的功能。而expect就使用来实现这种功能的工具。
sunsky
2020/08/20
2.5K0
shell脚本快速入门之-----深入介绍Expect免交互
spawn 启动追踪 —> expect 匹配捕捉关键字 ——> 捕捉到将触发send 代替人为输入指令—> interact /expect eof
不吃小白菜
2020/09/03
2.5K0
linux学习第六十九篇:分发系统介绍,expect脚本远程登录,expect脚本远程执行命令,expect脚本传递参数
分发系统介绍 expect可以让我们实现自动登录远程机器,并且可以实现自动远程执行命令。当然若是使用不带密码的密钥验证同样可以实现自动登录和自动远程执行命令。但当不能使用密钥验证的时候,我们就没有办法了。所以,这时候只要知道对方机器的账号和密码就可以通过expect脚本实现登录和远程命令。 expect脚本远程登录 yum install -y expect 自动远程登录 #! /usr/bin/expect set host "192.168.85.132" #要远程登录的机器IP set pass
用户1215343
2018/03/29
1.7K0
linux学习第六十九篇:分发系统介绍,expect脚本远程登录,expect脚本远程执行命令,expect脚本传递参数
Linux 下自动应答工具 Expect 使用指南
现代的 Shell 对程序提供了最小限度的控制(程序的开始/停止/关闭等),而把交互的特性留给了用户。这意味着有些程序,你不能非交互的运行,比如说 passwd 命令。有一些程序可以非交互的运行,但在很大程度上丧失了灵活性,比如说 fsck 命令。这表明 Unix 的工具构造逻辑开始出现问题。Expect 恰恰填补了其中的一些裂痕,解决了在 Unix 环境中长期存在着的一些问题。
iMike
2021/03/10
2K0
expect shell 脚本记录
expect是一个自动化交互套件,主要应用于执行命令和程序时,系统以交互形式要求输入指定字符串,实现交互通信。
郭顺发
2021/12/17
9840
expect java,Expect 使用详解「建议收藏」
expect是Unix系统中用来进行自动化控制和测试的软件工具,由Don Libes制作,作为Tcl脚本语言的一个扩展,应用在交互式软件中如telnet,ftp,Passwd,fsck,rlogin,tip,ssh等等。该工具利用Unix伪终端包装其子进程,允许任意程序通过终端接入进行自动化控制;也可利用Tk工具,将交互程序包装在X11的图形用户界面中。
全栈程序员站长
2022/11/15
3.1K0
20.31 expect脚本同步文件
expect脚本同步文件 在一台机器上把文件同步到多台机器上 自动同步文件 #!/usr/bin/expect set passwd "123456" spawn rsync -av root@192.168.133.132:/tmp/12.txt /tmp/ expect { "yes/no" { send "yes\r"} "password:" { send "$passwd\r" } } expect eof expect eof :只有spawn执行的命令结果才会被expect捕捉到,因为sp
运维小白
2022/01/06
3730
Linux 命令(239)—— expect 命令
expect 是一个自动化交互套件,主要应用于执行命令时,以交互形式按照要求输入指定字符串,实现自动交互。
恋喵大鲤鱼
2023/01/07
3.8K0
搭建一个高可用负载均衡的集群架构(第三部分)
11 制定合理的mysql数据备份方案,并写备份脚本,要求把备份数据传输到备份服务器
端碗吹水
2020/09/23
8820
搭建一个高可用负载均衡的集群架构(第三部分)
linux下expect环境安装以及简单脚本测试
expect是交互性很强的脚本语言,可以帮助运维人员实现批量管理成千上百台服务器操作,是一款很实用的批量部署工具! expect依赖于tcl,而linux系统里一般不自带安装tcl,所以需要手动安装 下载:expect-5.43.0.tar和tcl8.4.11-src.tar 下载地址:https://pan.baidu.com/s/1kVyeLt9 提取密码:af9p 将expect和tcl的软件包下载放到/usr/local/src目录下 (1)解压tcl,进入tcl解压目录,然后进入unix目录进
洗尽了浮华
2018/01/22
2.5K0
Linux expect用法介绍
1.expect是linux中一个交互命令,一般在 /usr/bin/expect路径下,如果该路径未加入到环境中需要先添加,其作用场景常用于交互执行输入指令
瑾诺学长
2020/08/13
5.4K0
详解自动交互命令expect,免去手动输入!
#概述 expect是一个用来实现自动交互功能的软件套件,是基于TCL的脚本编程工具语言,方便学习,功能强大
老油条IT记
2020/09/04
4.4K0
推荐阅读
相关推荐
Linux基础(day76)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验