欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 金融 > windows端远程控制ubuntu运行脚本程序并转发ubuntu端脚本输出的网页

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

2025/4/26 6:16:22 来源:https://blog.csdn.net/qq7835144/article/details/147462148  浏览:    关键词: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

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词