如何高效使用Linux中的screen命令

如果您是一个技术人员,特别是系统管理员或开发人员,则可能会相当频繁地使用SSH登录到Linux服务器中。这是因为它为您提供了快速,安全和方便的远程访问方式。但是,有时您可能需要同时运行多个进程或会话,或者不得不离开您当前打开的会话并希望返回到它,这可能会导致一些问题。

您经常会发现,您的命令行会话经常中断或其进程随着会话的结束而中止。 为了解决这个问题,Linux为我们提供了一个强大而有用的工具—— "screen"命令。

在本文中,我们将讨论如何使用Linux中的“screen”命令来提高您的生产力。并且,我们将演示如何使用screen会话并保持它们在后台运行。

什么是Screen命令?

Screen是一个允许您在单个物理终端上运行多个全屏会话的终端多路复用程序。 它允许您在单个终端窗口中同时运行多个会话,而不会干扰当前进程或被关闭的 shell 会话。 它还使您可以将会话离线,随时连接到它们并恢复它们的会话。

安装Screen

如果您的Linux发行版未事先安装screen ,您可以使用以下命令在终端中安装它:

- Debian/Ubuntu: sudo apt-get install screen - CentOS/RHEL/Fedora: sudo yum install screen - openSUSE: sudo zypper install screen

linuxscreen命令

创建一个新的Screen会话

要创建一个名为“ session_name”的新Screen会话,请打开终端并运行以下命令:

``` screen -S session_name ```

现在,您已经在名为“ session_name”的新会话中。 你可以这样认为,现在你有一个新的终端窗口,并且你可以从这个终端执行命令了。 它就像打开了一个新的终端窗口一样,但实际上它是在同一个屏幕上,而不是打开一个新的窗口。

Detach and resume a Screen session

现在,如果您要从当前Screen会话断开连接并在后台保持连接,则可以按下Ctrl-a d 。 您将被带回到原始终端窗口,但是您的“ session_name”会话将继续在后台运行。

在此时,您可以继续进行其他操作,例如打开其他会话或编辑文件。 要重新连接到您的已分离屏幕会话,请使用以下命令:

``` screen -r session_name ```

恢复从Screen会话中断开的会话

您可以在同一计算机上登陆多个SSH会话,并在每个会话之间切换。 如果您需要在不同的SSH会话之间移动您的Screen会话。 那么您可以通过以下方法找到和重新加入您的会话。

首先,您需要列出当前在计算机上运行的所有屏幕会话。 使用以下命令:

``` screen -ls ```

接下来,您将看到进程ID和会话的名称:

``` There is no screen to be resumed matching session_name. ```

最后,要重新连接到您的屏幕会话,请使用以下命令:

``` screen -r process_id ```

关键词:LinuxScreen命令