首页 > 系统 > Linux > 正文

Linux中实现在一个文本列表里选定主机名后回车直接 SSH 登陆

2024-08-27 23:58:57
字体:
来源:转载
供稿:网友

本文我们来实现这样一个功能,就是在linux中,我们把一些主机名(和ip地址)列表存在一个文本文件里,然后用vi打开后通选择某个主机后回车就可以用SSH登陆.

不管 chef/puppet/salt/ansible 这类自动化配置工具多么智能,我们总有需要登陆到单台服务器上找问题的时候,总不能每次去翻 doc/txt 文档找相应的 IP 地址和用户名吧,找到 IP 地址和用户名后、copy 出来、切换窗口、再 ssh?有点累~~

机械的工作总是能找到替代的工具来完成,warp 就是这样一个小工具,确切的说是一个小 bash 脚本,warp 从 .warp 文本文件里读取主机名(IP 地址)信息,然后自动连上 ssh.

  1. $ wget https://raw.githubusercontent.com/jpalardy/warp/master/warp 
  2. $ chmod +x warp 

我们可以看到这个 .warp 文件格式很自由,只要保证第一列是主机名和 IP 地址(执行 ssh 命令格式的后半部分)就可以了,还可以用 — 和 # 当作注释方便我们区分和归类不同的服务器:

  1. $ vi ~/.warp 
  2. # VIRTUAL MACHINE HOSTS 
  3.  
  4. -- production servers 
  5.  
  6. host101.vpsee.com -- xen host 
  7. host102.vpsee.com 
  8. root@host103.vpsee.com -- kvm host 
  9. user@host104.vpsee.com 
  10.  
  11. -- development servers 
  12.  
  13. 172.20.2.101 
  14. 172.20.2.102 
  15. root@172.20.2.103 
  16. user@172.20.2.104 
  17.  
  18. # SUN GRID ENGINE HOSTS 
  19. //Vevb.com 
  20. sge101 
  21. sge102.cluster.vpsee.com 
  22. 192.168.2.15 -- local datacenter 

执行 warp 后会自动打开 vi/vim,然后使用 kj 键选择某行后回车即可:

$ ./warp

如果选择多行,warp 还支持 csshx 哦~

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表