文档章节

Linux通过expect配置自动登录

COSE
 COSE
发布于 2017/07/25 11:24
字数 150
阅读 18
收藏 0

home目录下创建.expect目录,并添加两个文件:

  1. expect登陆脚本ssh-login.exp
#!/usr/bin/expect -f

set timeout 30

set host [lindex $argv 0]
set port [lindex $argv 1]
set user [lindex $argv 2]
set password [lindex $argv 3]

spawn ssh -p $port $user@$host
expect {
    "yes/no" { send "yes\r"; exp_continue }
    "password:" { send "$password\r" }
}

interact
  1. expect配置脚本ssh-login.sh
# alias ssh-name="./expect/ssh-login.exp host port username password"
alias ssh-n1.cluster=".expect/ssh-login.exp 192.168.9.181 22 root cluster"
alias ssh-n2.cluster=".expect/ssh-login.exp 192.168.9.182 22 root cluster"
alias ssh-n3.cluster=".expect/ssh-login.exp 192.168.9.183 22 root cluster"
alias ssh-n4.cluster=".expect/ssh-login.exp 192.168.9.184 22 root cluster"
alias ssh-n5.cluster=".expect/ssh-login.exp 192.168.9.185 22 root cluster"

.bashrc下添加

if [ -f ~/.expect/ssh-login.sh ]; then
    . ~/.expect/ssh-login.sh
fi

© 著作权归作者所有

COSE

COSE

粉丝 6
博文 22
码字总数 10162
作品 0
南京
程序员
私信 提问
Linux-Shell交互式自动化运维程序

Expect是Linux操作系统下的一个用来处理交互操作,系统默认是没有安装expect库,所以执行expect会提示找不到命令,需要手动安装,其它安装也比较简单,可以通过二进制源码包编译配置进行安装...

linux-tao
05/02
36
0
Linux Shell交互式自动化运维程序

Expect是Linux操作系统下的一个用来处理交互操作,系统默认是没有安装expect库,所以执行expect会提示找不到命令,需要手动安装,其它安装也比较简单,可以通过二进制源码包编译配置进行安装...

xiangyunyan
05/02
33
0
教会你Linux Shell自动交互的三种方法

你了解Linux系统么?你是Linux系统的应用者么?如果你要学习linux,你可能会遇到Linux Shell自动交互问题,这里将介绍Linux Shell自动交互的解决方法,在这里拿出来和大家分享一下。 一、背景...

魏邪乎
2014/02/13
248
0
xshell上自动跳转登录多台机器

使用linux环境,有时候经常需要远程登录服务器并在登陆后跳转到其他的局域网机器。通过实际使用发现xshell是比较理想的工具,具体设置过程如下: 点击Logon Scripts 弹出下图,勾选Execute t...

庆沉
2015/10/31
117
0
linux复盘:expect构建文件分发系统

需求:开发人员开发的代码发布到线上环境中(其实后面用到jenkins才是真正的98k) expect可以让我们实现自动登录远程机器,并且可以实现自动远程执行命令。当然若是使用不带密码的密钥验证同...

历经35天的选择
2018/02/10
94
0

没有更多内容

加载失败,请刷新页面

加载更多

PhotoShop 高级应用:USM锐化/S锐化/防抖

、 高反差锐化+混合模式:叠加模式 【将更多的边缘细节添加到图像中】

东方墨天
22分钟前
5
0
Python数据可视化之matplotlib

常用模块导入 import numpy as npimport matplotlibimport matplotlib.mlab as mlabimport matplotlib.pyplot as pltimport matplotlib.font_manager as fmfrom mpl_toolkits.mplot3d i......

松鼠大帝
昨天
4
0
我用Bash编写了一个扫雷游戏

我在编程教学方面不是专家,但当我想更好掌握某一样东西时,会试着找出让自己乐在其中的方法。比方说,当我想在 shell 编程方面更进一步时,我决定用 Bash 编写一个扫雷游戏来加以练习。 我在...

老孟的Linux私房菜
昨天
5
0
Go语言Hello world(GOPATH和Go Module版)

本文是「vangoleo的Go语言学习笔记」系列文章之一。 官网: http://www.vangoleo.com/go/go-hello-world-02/ 往期回顾: Go语言入门-你好,Go语言 Go语言入门-Hello World(Go Playground版) 上...

vangoleo
昨天
8
0
C++虚函数以及虚函数表

在了解虚函数之前先了解下对象模型: 对象模型: 在C++中,有两种数据成员(class data members):static 和nonstatic,以及三种类成员函数(class member functions):static、nonstatic和v...

黑白双键
昨天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部