快速连接服务器脚本 可从多个服务中选择并连接

news/2025/3/26 7:01:15/

使用 python 做一个可选择服务器登录连接的脚本

前置条件

  1. 需要有python 环境
  2. python --version 显示版本号即可
  3. 检查 python 是否有 paramiko 包
  4. 没有的话 python install paramiko
  5. 创建一个python 文件,内容如下
# -*- coding: utf-8 -*-"""
Authors: huxiaohua
Date:    2023/8/17
Time:    2:41 PM
"""
import pexpectdef connect_to_server(hostname, username, password):try:ssh_cmd = f"ssh {username}@{hostname}"child = pexpect.spawn(ssh_cmd)child.expect('password:')child.sendline(password)# 等待终端输出,保持会话child.interact()except pexpect.ExceptionPexpect as e:print("发生错误:", str(e))def main():servers = {'Server 1': {'hostname': 'xxxx','username': 'root','password': 'xxxx'},# 添加更多的服务器...}print("可用服务器列表:")for index, server_name in enumerate(servers, start=1):print(f"{index}. {server_name}")selection = input("请选择要连接的服务器编号:")selection = int(selection)server_names = list(servers.keys())selected_server_name = server_names[selection - 1]selected_server_info = servers[selected_server_name]connect_to_server(selected_server_info['hostname'], selected_server_info['username'], selected_server_info['password'])if __name__ == '__main__':main()

http://www.ppmy.cn/news/1048281.html

相关文章

【腾讯云Cloud Studio实战训练营】用Vue+Vite快速构建完成交互式3D小故事

👀前置了解:(官网 https://cloudstudio.net/) 什么是Cloud Studio? Cloud Studio 是基于浏览器的集成式开发环境(IDE),为开发者提供了一个永不间断的云端工作站。用户在使用 Cloud Studio 时无需安装&#…

Linux面试笔试题(1)

1、以长格式列目录时,若文件test的权限描述为:drwxrw-r–,则文件test的类型及文件主的权限是__A____。 A.目录文件、读写执行 B.目录文件、读写 C.普通文件、读写 D.普通文件、读 在这个问题中,我们需要解析文件权限的描述&…

c#实现依赖注入

当谈到C#中的依赖注入(Dependency Injection,DI)时,我们可以使用一个简单的示例来说明它是如何工作的。依赖注入是一种设计模式,用于将依赖关系从一个类传递到另一个类,以实现松耦合和可测试性。 假设我们有一个简单的订单处理应用程序,其中包含两个主要类:OrderServi…

ModaHub魔搭社区:如何用Milvus Cloud和 LangChain手搓一个有“人格”的智能客服机器人?(二)

目录 6. 首次咨询问答 7. " 温度 " 8. " 监控保护 " 六、参考信息 6. 首次咨询问答 一个引导语的配置,可以规范机器人在接待时与客户打招呼的内容,交给客户自行设定即可。当然,要和自己的人设尽量保持一致。 以上内容的组合,通过产品界面配置,生…

【CASS精品教程】CAD2016+CASS11.0安装教程(附CASS11.0安装包下载)

文章目录 一、CAD2016_x64安装二、CASS11.0安装1. 安装程序2. 安装补丁3. 安装注册机三、CASS11.0下载地址一、CAD2016_x64安装 CASS11.0.0.8 支持 AutoCAD2010-2023,大家可以根据自己的情况安装对应的版本,本文以CAD2016为例,CAD安装过程略去。 二、CASS11.0安装 点击订…

OpenCL实现SobelFilter(行列分解)

1.行列分解数学原理 row_filter[1 0 -1], col_filter[1 2 1] row_filter[1 2 1], col_filter[1 0 -1] 2.非局部内存实现 __kernel void sobel_filter_separable(__global uchar* padSrc, __global uchar* dst, int height, int width, int pad_width) {__local short local_ou…

@Accessors和@Builder区别

目录 Accessors和Builder Accessors(chaintrue)BuilderAccessors和Builder的区别Accessors和Builder使用的坑详细看看Accessors注解 Accessors的源码Accessors属性说明 fluent属性chain属性makeFinal属性prefix属性 Accessors和Builder Accessors(chaintrue) 就是new一个对象…

嵌入式真的能做一辈子吗?

近些天有同学问我,现在互联网好多岗位都是吃青春饭,年纪大了就要被优化,嵌入式是不是也是这样呢?我告诉他完全不是,嵌入式是值得做一辈子的职业。 为什么我怎么有底气呢,因为嵌入式行业是一个非常广泛的领域…