Ubuntu使用Spawn和expect实现ssh自动登陆

原创 2016年05月30日 10:42:46

1.安装expect

  • 使用以下代码检测expect是否已经安装
 ls /usr/bin | grep expect 
如果显示为空,则使用以下命令安装
sudo apt-get install tcl tk expect

2. 制作自动登陆脚本

touch www.itnewstop.com
chmod +x www.itnewstop.com
vi www.itnewstop.com
  • 脚本中写入以下内容,即,按i键进入写入模式,
#!/usr/bin/expect
spawn ssh yourusername@www.itnewstop.com
expect "*password:"
send "yourpassword\r"
expect "*#"
interact
按esc退出插入模式,然后输入:wq,保存并退出。

3.使用脚本自动登陆

  • 注意,需要先手动ssh一下目标机保存密匙,因为我们脚本里并没有考虑这一步,不然会报错。
  • 使用以下命令登陆远程机器
cd ~ 
./www.itnewstop.com

相关文章推荐

Linux expect 用法

expect是建立在tcl基础上的一个工具,它用来让一些需要交互的任务自动化地完成。因为expect是基于tcl的,所以需要你的系统中安装有tcl如何检查?[root@dev ~]# whereis ...
  • catoop
  • catoop
  • 2015年09月08日 13:48
  • 17227

22. ubuntu 16.04 LTS 模拟键盘输入expect

在linux 日常维护中,通常会写一些自动化的脚本,但是有些命令需要一些手工输入一些人工交互的提示信息,比如说ssh 命令, sftp 命令等.人工交互比较麻烦,此时就可以使用expect 命令模拟键...

linux expect简介及安装

简介:                我们通过Shell可以实现简单的控制流功能,如:循环、判断等。但是对于需要交互的场合则必须通过人工来干预,有时候我们可能会需要实现和交互程序如telnet服务...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

linux expect, spawn用法小记

使用expect实现自动登录的脚本,网上有很多,可是都没有一个明白的说明,初学者一般都是照抄、收藏。可是为什么要这么写却不知其然。本文用一个最短的例子说明脚本的原理。    脚本代码如下:    ...
  • wisgood
  • wisgood
  • 2014年05月04日 20:57
  • 2023

spawn ssh

#! /usr/bin/expect set ip [lindex $argv 0]; set username [lindex $argv 1]; set password [lindex $ar...

expect ------提供用户名和密码的SSH自动登录脚本

使用VPN,每次都要在Terminal上重复输入命令: ssh -D port user@host 出来密码提示符后,把复杂的密码拷贝下来,然后粘贴到Terminal,敲回车...   终于忍...

Ubuntu 10.04 LTS上源码安装Tcl/Tk、Expect

Tcl/Tk http://www.tcl.tk/ user@speed:~$ cd Downloads/ user@speed:~/Downloads$ [ -e tcl8.5.9-s...
  • zqt520
  • zqt520
  • 2012年03月11日 16:13
  • 3212

expect spawn、linux expect 用法

使用expect实现自动登录的脚本,网上有很多,可是都没有一个明白的说明,初学者一般都是照抄、收藏。可是为什么要这么写却不知其然。本文用一个最短的例子说明脚本的原理。   脚本代码如下:  ...
  • ysdaniel
  • ysdaniel
  • 2011年12月10日 13:46
  • 44890

Spawn-FCGI安装

Spawn-FCGI安装获取spawn-fcgi编译安装包, 在 http://redmine.lighttpd.net/projects/spawn-fcgi/wiki 上可 以获取当 前最新的版...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Ubuntu使用Spawn和expect实现ssh自动登陆
举报原因:
原因补充:

(最多只允许输入30个字)