如何在Linux命令行中打开一个新窗口(shell)?

6

我现在正在使用一个工具,需要通过putty连接到远程主机,登录后运行一系列命令来启动引擎,在打开一个新窗口(再次登录)来启动另一个引擎,然后打开第三个窗口(再次登录)来实际使用该工具(让前两个窗口中的引擎保持运行状态)。我想编写一个shell脚本来自动化这个过程,这样我只需打开一个窗口,输入“sh whatever.sh”,就可以开始运行,而不需要手动打开新窗口并重新登录。但是,我找不到一个命令来将我从一个窗口带到下一个窗口。有什么想法吗?


1
不太理解...不如使用ssh在远程机器上执行命令:ssh root@www 'ps -ef | grep apache | grep -v grep | wc -l' - Fredrik Pihl
8个回答

5
你可以通过在命令行中添加“&”符号或在运行时按下“Ctrl + Z”(然后输入“bg”让进程继续,有关更多信息,请使用“jobs”)来将第一个进程放到后台。
如果这还不够,你可以使用screentmux创建虚拟 shell。
如果你已经重定向了 X(即可以通过 ssh 访问 GUI),你也可以通过执行你喜欢的(GUI)控制台程序(如 xterm、konsole、gnome-terminal 等)来启动一个新窗口。

@Fredrik 已更新并包含在答案中。谢谢! - phihag

4

3

bash命令打开一个Bourne-again shell(bash)会话。


2
尝试输入“konsole”。这将打开一个新的bash窗口并将焦点设置为该窗口。

这个方法是有效的,但不幸的是它并没有打开一个终端窗口,而是打开了另一个应用程序。 - Alex

2
在我的Ubuntu 18上,我只需输入以下命令:
gnome-terminal

一个新的shell窗口将会打开...我不喜欢上面的答案,因为xtermkonsole很可能还没有安装。


0

目标机器上的Shell脚本无法感知客户端机器上的putty窗口。 考虑使用Screen:http://www.gnu.org/s/screen/ - 这是一种干净而强大的方式。


0

我认为你需要命令行窗口,然后写入:

$ xterm
# new window started

如果你需要在新窗口使用Python:
$xterm python
#now a window will shown with python shell

0

Xfce终端的另一个不错的选项:

xfce4-terminal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接