cmd使用ssh连接Linux脚本

前言

在开发过程中,由于MobaXterm,我不知道怎么分页(不是屏内分页),用crtl+Tab,用起来不习惯,主要是MobaXterm连接了多个服务器,切换起来很麻烦。我是比较习惯使用alt+Tab,于是我就想着用cmd,连接ssh,当开发过程需要看日志,我就只开一个cmd连接ssh,但是每一次cmd都要重新连接,(为什么不创建秘钥,因为开发服务器,经常,,所以不创建秘钥)于是我写了个脚本,在cmd直接运行就可以连接服务器,并且查看某个日志。

可直接在打开cmd的默认路径下(我的是c:/user/user)创建一个 .vbs 的文件

sh 复制代码
Dim WshShell
Set WshShell=WScript.CreateObject("WScript.Shell")
WScript.Sleep 1500
' 下面的 + 号,表示输入法切换,不需要切换输入法的可以不要 '
WshShell.SendKeys "+"    
' 这里ssh连接,默认端口为22,有其他端口的可以在后面加上 -p 端口号 '
WshShell.SendKeys "ssh 用户名@你的ip"
WshShell.SendKeys "{ENTER}"
WScript.Sleep 1500
WshShell.SendKeys "服务器密码"
WshShell.SendKeys "{ENTER}"
WScript.Sleep 1500
WshShell.SendKeys "tailf /sf/log/today/你的日志名称"
WshShell.SendKeys "{ENTER}"

编写完vbs脚本后,即可win+R,然后执行脚本文件(因为文件创建在打开cmd的默认路径下,所以很方便),即可连接上服务器,查看日志。

当有多个服务器需要看日志,那么每一次都需要修改vbs脚本比较麻烦,那就在上面的代码修改一点点
sh 复制代码
Dim WshShell
Set WshShell=WScript.CreateObject("WScript.Shell")
WScript.Sleep 1500
usernameInput = InputBox("Enter your username:")
ipInput = InputBox("Enter your ip:")
passwordInput = InputBox("Enter your password:")
WshShell.SendKeys "ssh " & usernameInput & "@" & ipInput
WshShell.SendKeys "{ENTER}"
WScript.Sleep 1500
WshShell.SendKeys passwordInput
WshShell.SendKeys "{ENTER}"
WScript.Sleep 1500
WshShell.SendKeys "cd /sf/log/today"
WshShell.SendKeys "{ENTER}"
WshShell.SendKeys "tailf /sf/log/today/你的日志文件"
WshShell.SendKeys "{ENTER}"

这个脚本执行起来,就会提出提示框,让你填写你要查看的服务器

哈哈哈,看起来没什么用,但是还是方便了那么一点点。

相关推荐
雯宝5 小时前
mnt_init 函数
linux
律宏阔11 小时前
WSL Docker 端口明明空闲,但就是绑不上端口
linux·windows
律宏阔11 小时前
WSL 突然断网,无法 ping 内网或外网
linux·windows
穷人小水滴11 小时前
用容器编译 VirtualBox 虚拟机软件 (ArchLinux, podman)
linux·容器·virtualbox
乱码三千11 小时前
如何优雅地直连无公网 IP 的远程 GPU 服务器
linux·人工智能·程序员
yunwei3711 小时前
使用 eBPF 跟踪 Nginx 请求
linux·后端·性能优化
yunwei3711 小时前
使用 eBPF 跟踪 MySQL 查询
linux·后端·性能优化
yunwei3711 小时前
eBPF 示例教程:使用 XDP 捕获 TCP 信息
linux·后端·性能优化
judezh11 小时前
api 容器一直 unhealthy?我把一个 Agent 运行时的健康检查逐条拆了,查出四个问题
运维·docker
GeW11 小时前
制造业高端化,为什么必须重估Linux和数据库?
linux