首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

shell全自动登录远程终端

先看效果

你需要做的事情,在配置文件中配置服务器信息选择对应的服务器,进行连接。

传统手工连接

弊端很明显,需要记服务器地址、ip、key位置、密码等,每次都需要自己手打一长串命令啊。。。

自动连接脚本

思路很简单,将连接需要的参数提取到配置文件,从读取配置文件读取指定行服务器信息进行连接,下面是配置文件。

server.conf

除第一行之外,每行代表一台服务器连接信息,配置文件信息比较简单,仅仅包含一些连接需要的必要信息和简单说明。

过程说明打印服务器配置文件信息用户输入需要连接服务器的 id读取用户选择行的信息到数组中,组成对应的 shell执行其中如果需要密码输入,自动交互由 expect 完成

expect是什么?

一个可以帮助完成 用户与 终端交互的小工具(可以自行了解下,很简单,花不了10分钟)

比如连接服务器需要输入密码,你写好 expect 脚本,让它在指定的时候,帮你输入你的密码,下面是脚本内容

expect_login.sh

相关代码

第一步读取配置文件,并打印到 终端

第二步,用户交互

第三步,连接

尾本文没有什么深奥的地方,仅仅是很早之前简单了解 shell 之后,对日常操作做了一点点改进和优化,相信还有许多更好更优化的方式,也希望本文对一些朋友有帮助。该自动登录需要 expect 支持,如果不想装 expect ,可以将 ecpect 相关注释掉,需要输入密码的时候,将打印出的密码 copy 进去即可。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171231G00IFT00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券