您的位置:首页 > 其它

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

2018-03-05 22:02 936 查看
20.31 expect脚本同步文件



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

创建文件,

然后把上面的代码粘贴进去,


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


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


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

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



番外


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



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



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


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

然后加权限,然后执行



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

20.33 构建文件分发系统







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

这个参数就能做到了

<
4000
img src="https://img-blog.csdn.net/20180305211811370" alt="" />



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



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



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




(这种方式需要两台机器密码一样,或者改成密钥认证)
然后我们还需要创建一个rsenc的shell,为了便利一下这些ip地址





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


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






然后执行

20.34 批量远程执行命令



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





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




然后我们来执行一下
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐