利用shell的expect实现自动登录服务器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用shell的expect实现自动登录服务器相关的知识,希望对你有一定的参考价值。
前言:使用ssh登录内网服务器,每次都要输入以下命令,次数多了就感觉很麻烦。
[email protected]:~$ ssh [email protected]
[email protected]‘s password:
现在,我们可以使用Expect实现复杂的交互过程。
Expect是一个用来处理交互的命令。
expect常用的四个命令:
-
spawn 启动新的进程
-
expect 从进程接收字符串
-
send 用于向进程发送字符串
- interact 允许用户交互
使用expect
1、 安装
[email protected]:~$ sudo apt-get install expect
2、获取expect执行路径
[email protected]:~$ which expect
/usr/bin/expect
3、编写脚本
[email protected]:~$ cd ~
[email protected]:~$ touch logindev
[email protected]:~$ vim logindev
#!/usr/bin/expect
#启动新进程
spawn ssh [email protected]
#从进程接收字符串
expect "*password:"
#向进程发送字符串
send "yourpassword
"
#允许用户交互
interact
保存,并给赋予执行权限
[email protected]:~$ chmod +x ./logindev
4、运行脚本
[email protected]:~$./logindev
以上是关于利用shell的expect实现自动登录服务器的主要内容,如果未能解决你的问题,请参考以下文章