linux脚本expect自动登录,1.7-自动登录expect脚本

第一部分:expect讲解

expect可以让我们实现自动登录远程机器,并且可以实现自动远程执行命令。当然若是使用不带密码的密钥验证同样可以实现自动登录和自动远程执行命令。但当不能使用密钥验证的时候,我们就没有办法了。所以,这时候只要知道对方机器的账号和密码就可以通过expect脚本实现登录和远程命令。

expect可以实现:1 远程同步文件,借助rsync命令

2 远程执行命令,使用SSH远程登陆执行命令

使用expect之前,需要先安装expect:

yum install -y expect

#! /usr/bin/expect                #抬头和SHELL类似

set host "192.168.11.102"         #expect语句,等同于host=192.168.11.102

set passwd "123456"               #passwd=123456

spawn ssh  root@$host             #expect语句,后面就是shell登陆机器的命令了

expect {                          #expect语句模块,第一次登陆时,会提示yes或no。自动执行

"yes/no" { send "yes\r"; exp_continue} 如果不是第一次登陆,则不执行。

"assword:" { send "$passwd\r" }   #匹配最后几个字符assword,发送密码变量。

}

interact

以上为expect的固定语法,其中expect语句模块是必须要有的。

脚本保存为   1.expect

增加执行权限 chmod +x 1.expect

执行脚本     ./1.expect(注意没有空格且需要X权限)或者expece 1.expect(不需要X权限)

注意脚本中\r 是回车的意思

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值