如何管理和快速登录多台服务器(基于expect)

2023-11-07

背景

shell快速登录多个机器。

平时需要经常切换多个机器,或者需要通过跳板机来回换登录机器。

为了便于自己快速登录,和每次找机器,写了登录管理工具https://github.com/cgpeter96/shell/blob/main/login_remote.sh

依赖

基于expect和shell编写,因此需要安装expect

#rehat or centos
yum install expect
# debian
apt install expect

脚本说明

每次有新机器的时候就复制下以下内容 然后保存登录就行了。

host_list[${#host_list[@]}]="xxx.xx.com"
username_list[${#username_list[@]}]="username"
password_list[${#password_list[@]}]="password"
port_list[${#port_list[@]}]="22"
msg_list[${#msg_list[@]}]="测试机"

使用

bash login_remote.sh

结论

妙蛙种子来了米奇妙妙屋。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何管理和快速登录多台服务器(基于expect) 的相关文章

  • 如何让“grep”从文件中读取模式?

    假设有一个很大的文本文件 我只想打印与某些模式不匹配的行 显然 我可以使用egrep v patter1 pattern2 pattern3 现在 如果所有这些模式都在一个文本文件中怎么办 最好的制作方法是什么egrep从文件中读取模式 g
  • Bash 方法的返回值总是模 256

    我有一个 bash 脚本方法 它返回输入值 然而 返回值始终是模 256 的值 我用 google 搜索了一段时间 发现this http www tldp org LDP abs html exitcodes html文章说它总是以 25
  • 从 TypeScript 运行任何 Linux 终端命令?

    有没有办法直接从 TypeScript 类中执行 Linux 终端命令 这个想法是做类似的事情 let myTerminal new LinuxTerminal let terminalResult myTerminal run sudo
  • C 程序从连接到系统的 USB 设备读取数据

    我正在尝试从连接到系统 USB 端口的 USB 设备 例如随身碟 获取数据 在这里 我可以打开设备文件并读取一些随机原始数据 但我想获取像 minicom teraterm 这样的数据 请让我知道我可以使用哪些方法和库来成功完成此操作以及如
  • 设置 Apache POI 的路径

    我想创建 Excel 文件并使用 java 程序在该文件中写入数据 That is here http www techbrainwave com p 554我在 java 文件所在的位置提取了 Apache POI 并将该路径包含在路径变
  • Linux shell 脚本中的 while 循环超时

    这工作正常 无限循环 while TRUE do printf done 我在尝试着timeout this while loop与timeout命令 所有这些都不起作用 timeout 5 while TRUE do printf don
  • 让 MongoDB 在 Linux 上监听远程连接

    我已在 Windows 本地计算机上 上成功安装 MongoDB 作为服务 但现在我想将 MongoDb 移动到单独的服务器 所以我将 tarball 解压到网络上的虚拟服务器 运行 Linux 当我从本地计算机使用 PuTTY 连接到服务
  • 没有可用的符号表信息

    我正在测试第三方的库 它崩溃了 当我想查看崩溃的原因时 我的 gdb 告诉我没有可用的调试符号 Program received signal SIGSEGV Segmentation fault Switching to Thread 0
  • 如何使用 sed 仅删除双空行?

    我找到了这个问题和答案 https stackoverflow com questions 4651591 howto use sed to remove only triple empty lines关于如何删除三重空行 但是 我只需要对
  • 在主目录中安装库

    在 Linux Ubuntu 中 我尝试运行一个工具 但它显示错误 库丢失 我无权在系统中安装任何内容 或者根本无法从我的用户帐户执行 sudo 是否可以在我的主目录 没有 sudo 中安装缺少的库 在我的例子中为 libstdc so 6
  • 如何更改 Ubuntu 14.04 上的 php-cli 版本?

    我是 Linux 新手 在篡改时破坏了一些 php 设置 如果我执行一个包含以下内容的 php 脚本 phpinfo 它显示 php 版本为 5 6 但通过命令行 如果我运行php v它返回 7 0 版本 我想让两个版本匹配 我怎样才能修复
  • xsel -o 对于 OS X 等效项

    是否有一个等效的解决方案可以在 OS X 中抓取选定的文本 就像适用于 Linux 的 xsel o 一样 只需要当前的选择 这样我就可以在 shell 脚本中使用文本 干杯 埃里克 你也许可以安装xsel在 MacOS 上 更新 根据 A
  • 如何修复“iptables:没有该名称的链/目标/匹配”?

    我在我的 Linux 嵌入式系统上构建并安装了 iptables 如果我列出所有规则 则一切正常 iptables list Chain INPUT policy ACCEPT target prot opt source destinat
  • 为什么我收到“无法进行二进制日志记录”的信息。在我的 MySQL 服务器上?

    当我今天启动 MySQL 服务器并尝试使用以下命令进行一些更改时用于 MySQL 的 Toad http www quest com toad for mysql 我收到此消息 MySQL 数据库错误 无法进行二进制日志记录 消息 交易级别
  • Linux 中的无缓冲 I/O

    我正在写入大量的数据 这些数据数周内都不会再次读取 由于我的程序运行 机器上的可用内存量 显示为 空闲 或 顶部 很快下降 我的内存量应用程序使用量不会增加 其他进程使用的内存量也不会增加 这让我相信内存正在被文件系统缓存消耗 因为我不打算
  • 如何检测并找出程序是否陷入死锁?

    这是一道面试题 如何检测并确定程序是否陷入死锁 是否有一些工具可用于在 Linux Unix 系统上执行此操作 我的想法 如果程序没有任何进展并且其状态为运行 则为死锁 但是 其他原因也可能导致此问题 开源工具有valgrind halgr
  • 通过特定分隔符删除字符串

    我的文件中有几列 其中第二列有 分隔符 我想删除第二列中的第一个 第三个和第四个字符串 并将第二个字符串留在该列中 但我有正常的分隔符空间 所以我不知道 input 22 16050075 A G 16050075 A G 22 16050
  • 仅打印“docker-container ls -la”输出中的“Names”列

    发出时docker container ls la命令 输出如下所示 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a67f0c2b1769 busybox tail f dev
  • 如何在bash中使用jq从变量中包含的json中提取值

    我正在编写一个 bash 脚本 其中存储了一个 json 值 现在我想使用 Jq 提取该 json 中的值 使用的代码是 json val code lyz1To6ZTWClDHSiaeXyxg redirect to http examp
  • gdb查找行号的内存地址

    假设我已将 gdb 附加到一个进程 并且在其内存布局中有一个文件和行号 我想要其内存地址 如何获取文件x中第n行的内存地址 这是在 Linux x86 上 gdb info line test c 56 Line 56 of test c

随机推荐

  • 【Git常用命令】

    git clone url 下载一个项目和它的整个代码历史 git init 初始化仓库 默认为 master 分支 git add 提交全部文件修改到暂存区 git diff 查看当前代码 add后 会 add 哪些内容 git stat
  • 解决Qt5的QserialPort串口数据接受不完整的问题------完全有效

    解决Qt5的QserialPort串口数据接受不完整的问题 解决问题出处 https blog csdn net jason thinking article details 78455750 学习中遇到使用Qt在Windows下读取串口信
  • java BigDecimal 取平均值

    代码如下 import org apache commons collections4 CollectionUtils import java math BigDecimal import java util public class Bi
  • 企业微信开发实战(四、OA审批之企业假期管理配置、获取成员假期余额、修改成员假期余额)

    文章目录 7 获取企业假期管理配置 7 1概述 7 2代码实战 8 获取成员假期余额 8 1概述 8 2代码实战 8 3试错 9 修改成员假期余额 9 1概述 9 2代码实战 9 3试错 源码 赞赏 7 获取企业假期管理配置 7 1概述 1
  • struts2 struts.xml文件标签说明

  • [C++]构造与毁灭:深入探讨C++中四种构造函数与析构函数

    个人主页 北 海 CSDN新晋作者 欢迎 点赞 评论 收藏 收录专栏 C C 希望作者的文章能对你有所帮助 有不足的地方请在评论区留言指正 大家一起学习交流 目录 构造函数有什么作用 构造函数有什么特点 构造函数的种类 一 默认构造函数 1
  • 【华为OD机试真题】查找充电设备组合(python)100%通过率 超详细代码注释 代码优化

    华为OD机试真题 2022 2023 真题目录 点这里 华为OD机试真题 信号发射和接收 试读 点这里 华为OD机试真题 租车骑绿道 试读 点这里 查找充电设备组合 时间限制 5s空间限制 256MB限定语言 不限 题目描述 某个充电站 可
  • 【书虫录】《一句顶一万句》

    一直以来看的书都是跟工作强相关的书籍 更是很少会看小说类书籍 但是渐渐发现 工作的专业技能需要学习成长 生活 又何尝不是呢 这本书 被称之为中国的百年孤独 一句顶一万句 也算是刘震云老师的代表作 此书也同时被翻译成了多国语言版本 并且相当流
  • 2023金九银十必看前端面试题!2w字精品!

    文章目录 导文 CSS 1 请解释CSS的盒模型是什么 并描述其组成部分 2 解释CSS中的选择器及其优先级 3 解释CSS中的浮动 float 是如何工作的 并提供一个示例 4 解释CSS中的定位 position 属性及其不同的取值 5
  • LVM新增磁盘扩容

    实验环境 Rocky 9 0 VM16 Pro 1 新增一块磁盘 接口类型 SCSI 2 通过执行 lsblk 系统并未识别新增的磁盘 遇到这样的情况 咱们可以重启系统或者通过以下方法识别到新磁盘 但在生产环境中 很多时候并不能随意关闭服务
  • 02 初识Prometheus - 利用grafana让mysql数据生成折线图,柱状图

    https cloud tencent com developer article 1582979 step1 新建一个表testgraph 用来存放查询的数据 DROP TABLE IF EXISTS testgraph CREATE T
  • vue+electron桌面

    node js安装 cnpm下载 npm install g cnpm registry https registry npmmirror com vue脚手架安装 cnpm install g vue cli 安装 electron脚手架
  • JavaSE的思维导图

    学了这么久的Java我们来做一次整体性的总结 回顾我们所学过的整个知识体系 大致内容包括 初识Java 数据类型与变量 运算符 数据类型与变量 运算符 逻辑控制 方法的使用 数组的定义与使用 类与封装 继承与多态 抽象类与接口 String
  • ChatExcel?

    大家好 我是章北海mlpy 最近在浅学LangChain 在大模型时代 感觉这玩意很有前途 LangChain是一个开源的应用开发框架 目前支持Python和TypeScript两种编程语言 它赋予LLM两大核心能力 数据感知 将语言模型与
  • 模版类运算符重载

    span style font size 18px 自定义分数模版类 运算符重载 同时支持宽字符 wchar t span span style font size 18px span span style font size 18px i
  • 链表(变形)

    单链表结点只有一个指向其后继的指针 使得单链表只能从头结点 依次顺序地向后遍历 要访问某个结点的前驱结点 delete insert 只能从头开始遍历 访问后继结点的时间复杂度为O 1 访问前驱结点的时间复杂度O n 一 双链表 双链表结点
  • oracle语句查询时间范围,oracle时间范围查询

    当时间精确到秒的指标和时间精确到日的时间进行对比是恒不等于的 但是可以判断大于或者等于的情况 举个例子 指标 时间精确到秒 select 时间精确到秒 from table where 时间精确到秒 lt to date 2013 11 2
  • 学校实训密码锁设计(基于STC51单片机)报告

    这里写目录标题 选题的背景与意义 项目内容 51密码锁设计 产品功能 方案设计 方案实施 元件选择 一 电流放大 二 偏置电路 三 开关作用 设计流程 代码 电路仿真 PCB打板 结论 选题的背景与意义 单片微型机简称单片机 它是在一片芯片
  • 时序预测

    时序预测 MATLAB实现基于QPSO LSTM PSO LSTM LSTM时间序列预测 目录 时序预测 MATLAB实现基于QPSO LSTM PSO LSTM LSTM时间序列预测 效果一览 基本描述 程序设计 参考资料 效果一览 基本
  • 如何管理和快速登录多台服务器(基于expect)

    背景 shell快速登录多个机器 平时需要经常切换多个机器 或者需要通过跳板机来回换登录机器 为了便于自己快速登录 和每次找机器 写了登录管理工具https github com cgpeter96 shell blob main logi