当前位置: 首页 > news >正文

windows端远程控制ubuntu运行脚本程序并转发ubuntu端脚本输出的网页

背景

对于一些只能在ubuntu上运行的脚本,并且这个脚本会在ubuntu上通过网页展示运行结果。我们希望可以使用windows远程操控ubuntu,在windows上查看网页内容。

方法

start cmd.exe /k "sshpass -p passwd ssh name@xxx.xxx.xxx.xxx "cd /home/hhh; /usr/bin/xvfb-run -a ./home/hhh/scripts.sh -p 8081""
start http://127.0.0.1:8081/
sshpass -p passwd ssh -L 8081:localhost:8081 name@xxx.xxx.xxx.xxx -N

上述脚本首先是自动通过sshpass远程登录ubuntu,然后运行脚本程序,这个脚本会生成一个网页并通过ubuntu的8081端口转发出来。然后我们在windows上打开一个网页,并将ubuntu的网页内容转发到windows上。
其中一些命令的详细解释:

  • sshpass:可以自行搜索如何在windows上安装sshpass。这个工具可以使用户通过命令行的方式在windows的终端上远程自动输入密码登录ubuntu
  • xvfb-run -a :
    • xvfb-run :调用 X 虚拟帧缓冲器(X Virtual Framebuffer),允许在无图形界面的环境中运行需要 GUI 的程序。
    • -a :自动分配一个未被占用的显示号(例如 :1、:2 等),避免手动指定。
  • -L 8081:localhost:8081
    本地端口转发(Local Port Forwarding) :
    • -L 表示“本地转发”。
    • 8081 是本地计算机的监听端口。
    • localhost:8081 是远程服务器的目标地址和端口(localhost 在此表示远程服务器的本地地址)。
      作用 :所有发送到本地 8081 端口的流量会被 SSH 隧道加密后转发到远程服务器的 localhost:8081。
  • -N
    不执行远程命令 :
    SSH 连接建立后,不运行任何远程命令(通常用于仅需要端口转发的场景)。
  • 后台运行 :
    添加 -f 参数,命令会在后台运行:例如 ssh -f -N -L 8081:localhost:8081 name@xxx.xxx.xxx.xxx
  • 远程端口转发 :
    如果需要将远程端口暴露给外部,可以使用 -R,但需谨慎使用:ssh -R 8081:localhost:8081 name@xxx.xxx.xxx.xxx

相关文章:

  • SVN仓库突然没有权限访问
  • 奇安信春招面试题
  • linux内核进程管理(1)——创建,退出
  • 两个面向视觉定位的遥感船舶数据集:RSSVGSARVG
  • 深入解析 Spring Boot Test:架构、核心组件与最佳实践
  • 《多Agent架构VS千万字长文本VS深度推理引擎——拆解Coze、通义、Kimi的AI终局博弈密码》
  • HCIP实验二(OSPF网络配置与优化)
  • Android kotlin通知功能完整实现指南:从基础到高级功能
  • 京东商品详情数据 API 接口讨论学习
  • 《让机器人读懂你的心:情感分析技术融合奥秘》
  • 微服务 RabbitMQ 组件的介绍、安装与使用详解
  • 智能电网第3期 | 配电房巡检机器人通信升级方案
  • 数据库MySQL学习——day2(插入数据与基本查询)
  • Fragment重叠
  • 基于PaddleOCR对图片中的excel进行识别并转换成word(一)
  • 时序约束 记录
  • 【Flutter高效开发】GetX指南:一文学会状态管理、路由与依赖注入
  • 金融租赁质检的三重业务困境 质检LIMS系统的四大价值赋能场景
  • Reactor编程模型介绍
  • vue3:十一、主页面布局(修改顶部导航栏样式-左侧,页面名称设置)
  • 天问三号计划2028年前后发射实施,开放20千克质量资源
  • 国防部:希望美方不要有“受迫害妄想症”,总拿别人当借口
  • 央行上海总部:上海个人住房贷款需求回升,增速连续半年回升
  • 生态环境部谈拿手持式仪器到海边测辐射:不能测量水中放射性核素含量
  • 海南:谈话提醒9名缺点明显或有苗头性、倾向性问题的省管干部
  • 看正背面月壤、听火星上的声音,记者探营“中国航天日”科普展