返回首页
当前位置: 主页 > 精通Office > Ubuntu教程 >

使用 expect 脚本实现 ssh 自动登陆服务器

时间:2016-08-29 19:23来源:betway必威官网www.etsupport.net 编辑:麦田守望者

又学了一个小招,使用 expect 脚本语言实现 ssh 自动连接到服务器,实现自动化脚本。因为每次使用 ssh root@xx.xx.xx.xx 连接自己的阿里云服务器,都要手动输入一遍密码,有没有办法自动输入呢?

 

在网上搜索了一下,果然有办法,有一种脚本语言 expect ,它的作用就是能与交互式程序进行“可程序化”会话,比如自动输入密码,碰到”password”字符就会自动输入密码。

首先要安装 expect 脚本程序,不过在 Macbook 中自带了。比如 CentOS 的机器,可以使用 yum install expect 的方式安装。

这个简单的小脚本 ali.exp 如下(注意脚本文件格式是 exp ):

#!/usr/bin/expect

spawn ssh root@112.xx.xx.47
expect "password:"

send "A0000223456700\r"

interact

 

这样一来,把 ali.exp 文件设为可执行的之后,就可以 ./ali.exp 运行脚本,自动就连上服务器了。

spawn 后面就是要执行的 shell 命令,expect 是捕获要等待输入的字符,send 是自动输入的内容,注意要 “\r” 表示换行以确认输入。

那么,这个脚本语言可以利用到很多地方了,在 Linux 下,经常需要键入内容的脚本,可以考虑用 expect 来实现自动化交互式的脚本来替代人工重复的活动。

顶一下
(0)
0%
踩一下
(0)
0%
标签(Tag):Ubuntu Ubuntu教程 Ubuntu美化 Ubuntu技巧 ubuntu源 ubuntu模板
------分隔线----------------------------
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片