十七周四次课 2018.03.05 expect脚本同步文件、expect脚本指定host和要同步的文件、构建文件分发系统、批量远程执行命令

20.31 expect脚本同步文件


在一台机器上把文件同步到另外一台机器上去。

创建文件,然后把上面的代码粘贴进去,

把尾号132的远程机器的12.txt同步到本机的/tmp/目录下

第一次登录问提示是否登录,第二次就可以直接输密码登录了。

表示expect结束了,退出来,如果不加就会还没有传输就退出,没有时间执行操作。

然后我们加权限,然后执行


番外

默认是10秒超时,想要自定义就增加如下内容。(红框里写几就是几秒,永久不超时就是-1)


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


指定host和要同步的文件作为参数。(只适合同步一个文件)

先后顺序是从本机到远程机器,远程机器要写绝对路径。

然后加权限,然后执行


想要同步多个有个方法,就是循环,下面会讲到。

20.33 构建文件分发系统




我们想要同步多个文件就需要把他们写到list.txt里去,(需要加上绝对路径)然后使用这个参数就能做到了



然后我们去写list.txt文件列表

(需要保证对方的机器上也这个目录,如果没有可以在rsync.expect里的如下位置加-R就能自动创建)


然后我们还需要创建一个ip.list,因为你远程同步的机器可能不止一台,所以我们还需要加一个ip列表。


(这种方式需要两台机器密码一样,或者改成密钥认证)

然后我们还需要创建一个rsenc的shell,为了便利一下这些ip地址


执行之前我们需要给reync.expect一个执行权限。

我们把ip.txt和list.txt名字改一下(这里是一个疏忽,之前创建的时候就应该创建的以.list结尾的)


然后执行

20.34 批量远程执行命令


有了分发系统传输文件还不够,因为我们还需要做很多操作,就需要做命令批量执行的脚本。



然后还要定义一个exe的shell脚本(也就是for循环)


然后我们来执行一下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值