如何在 SSH 终端会话中有多个窗口?

Saa*_*kke 7 linux ssh terminal.app macos

我从 Mac OSX 登录到处理并行计算作业的远程服务器。我无法在这台服务器上安装任何东西,因为它是由大学管理的。我有多个作业正在运行,并希望通过以下方式监控日志文件:

tail -f logfile.log
Run Code Online (Sandbox Code Playgroud)

现在我有四个作业在运行,我打开四个终端窗口,SSH 四次进入服务器,然后执行 tail不同的日志文件(位于服务器上的不同文件夹中)执行四次命令。我有一种感觉,我正在以一种次优的方式执行此操作,并且只希望 SSH 一次,然后从一个终端窗口使用tail命令在单独的窗口(或选项卡)中打开所有四个日志文件。

这可能吗?还是强制签到四次?

dtm*_*and 13

屏幕实用将允许有多个窗口在会话中。(您必须在服务器端安装它)

这家伙向你展示了命令了如何在同一终端窗口中拆分视图。

它对于重新连接到已删除的会话也很有用。

更新:

请注意, screen 和 tmux 会话都将在一个会话中“实时”运行,这仍然只会在 OSX 终端应用程序本身上为您提供一个窗口或选项卡(即使这些实用程序允许您在该视图中拥有多个“窗口/视图”)。查看来自该用户的评论

ssh 连接是在一个 shell 中运行的单个进程,当您创建一个新选项卡时,您正在创建一个不会运行此进程的新本地 shell。此外,远程服务器不会在未经身份验证的情况下接受来自您的重复连接。从本质上讲,这是不可能做到的。您可以做的最接近的事情是利用 bash 历史记录,然后按向上箭头滚动查看最近的命令,直到找到用于当前连接的 ssh 命令,然后执行它。

如果您仍然希望在 OSX 终端应用程序本身中有多个窗口/选项卡,您将需要多次“登录”。一些用户已经创建了脚本来尝试帮助这个过程。

此用户解决方案可能最适合您。该用户为其远程连接创建了一个菜单

我见过的其他解决方案只适用于本地会话,但想法是相似的。


Mob*_*ius 5

tmux 是一个类似于 screen 的新选项。对于较新的操作系统,它可能比 screen 更容易找到。您可以在这里找到文档