一个 SSH 会话一个脚本多个终端无 X

一个 SSH 会话一个脚本多个终端无 X

我读过其他帖子,在答案中提出了同样的问题,运行你的脚本并像这样:

#!/bin/bash
xterm -e command

问题是我没有在该服务器上安装 X,所以我既不能做gnome-terminal -e command也不xterm -e command能做konsole -e command 我已经明确了我想要的目的和我的限制(没有 X11)有谁知道如何得到这个先?

答案1

您不需要服务器上的 X 即可运行xterm(或gnome-terminal)。

如果DISPLAYssh进入服务器后未设置,则可能是问题所在(使用 进行检查echo $DISPLAY)。

如果您的本地计算机没有安装 X,那么您应该查看tmuxscreen“增加”您的终端。

答案2

目前我见过的最有用的解决方案是这个:

screen -S CMD1 -d -m command1 ;
screen -S CMD2 -d -m command2 ;

您可以通过以下方式连接到屏幕:screen -r <pid>.<cmd>并使用注销control+a d 这很有趣,但是...有点笨拙,因为您没有可视化您的界面,并且必须以一种不太直观的方式从一个界面移动到另一个界面,另外,您有记住关闭它们,否则你可能会在不注意的情况下让服务器继续运行。

如果有人认为有更好且简单的解决方案,请告诉我。 ;)PD:我在这里找到了解决方案:https://stackoverflow.com/questions/18197395/have-bash-script-execute-multiple-programs-as-separate-processes

相关内容