简易命令登陆ssh服务器

登陆ssh服务器需要账号与密码,而往往我们需要频繁的登陆与登出或者切换服务器,会很繁琐。其实可以使用expect来实现简易命令登陆ssh服务器,比如一个“go”~

一、安装expect

#ubuntu
sudo apt-get install expect
#Mac
需要源码编译安装tcl与expect,自行搜索

若不成功,先更新下源再安装

sudo apt-get update

二、登陆脚本

#!/usr/bin/expect

# 设定超时时间为3秒
set timeout 3

set USRNAME "你的账户名@ip地址"

set PASSWORD "你的密码"

# fork 一个子进程执行 ssh 命令
spawn ssh -X "$USRNAME"

# 期待匹配到 'user_name@ip_string's password:' 
expect "*password*"

# 向命令行输入密码并回车
send "$PASSWORD\n"

# send "sudo -s\r" 

# 帮我切换到常用的工作目录
# send "cd /data/logs\r"

# 允许用户与命令行交互
interact

修改上面的

set USRNAME "你的账户名@ip地址"

set PASSWORD "你的密码"

将此文本保存成一个sh文件,比如go.sh

三、修改.bashrc

#ubuntu
vim ~/.bashrc
#Mac
vim ~/.bash_profile

添加一行

alias go='/home/ubuntu/bash/go/go.sh'

这里的go.sh为刚才保存脚本的存放路径,之后

#ubuntu
source ~/.bashrc
#Mac
source ~/.bash_profile

即可在终端中使用“go”来实现登陆ssh服务器

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值