当前位置:   article > 正文

Linux screen命令教程:如何在一个终端窗口中管理多个会话(附实例详解和注意事项)

linux screen

Linux screen命令介绍

screen是一个全屏窗口管理器,它将物理终端抽象为多个虚拟终端,每个虚拟终端都可以运行一个shell或程序。screen命令可以让你在一个终端窗口中打开多个会话,每个会话都有自己的环境,可以独立运行命令。这对于需要同时运行多个命令的用户来说非常有用。

Linux screen命令适用的Linux版本

screen命令在大多数Linux发行版中都是可用的,包括Debian、Ubuntu、Alpine、Arch Linux、Kali Linux、RedHat/CentOS、Fedora和Raspbian。如果你的系统中没有预装screen,你可以使用包管理器来安装。在Debian和Ubuntu上,你可以使用apt-get命令来安装:

[linux@bashcommandnotfound.cn ~]$ sudo apt-get install screen
  • 1

在RedHat/CentOS 7上,你可以使用yum命令来安装:

[linux@bashcommandnotfound.cn ~]$ sudo yum install screen
  • 1

在RedHat/CentOS 8和Fedora上,你可以使用dnf命令来安装:

[linux@bashcommandnotfound.cn ~]$ sudo dnf install screen
  • 1

在Alpine上,你可以使用apk命令来安装:

[linux@bashcommandnotfound.cn ~]$ sudo apk add screen
  • 1

在Arch Linux和Manjaro上,你可以使用pacman命令来安装:

[linux@bashcommandnotfound.cn ~]$ sudo pacman -S screen
  • 1

Linux screen命令的基本语法

screen命令的基本语法如下:

screen [options] [cmd [args]]
  • 1

这里,optionsscreen命令的选项,cmd是你想要在新的screen会话中运行的命令,args是传递给命令的参数。

Linux screen命令的常用选项或参数说明

下面是一些screen命令的常用选项:

选项描述
-A自动适应窗口大小
-c file使用指定的配置文件
-d (-r)分离(重新连接)会话
-h num设置滚动缓冲区的大小
-m忽略$STY环境变量,创建新的会话
-S name指定会话的名称
-v显示版本信息
-x连接到已经连接的screen会话

Linux screen命令实例详解

实例1:启动一个新的screen会话

你可以使用screen命令启动一个新的会话。这个命令会在新的screen会话中启动一个shell。

[linux@bashcommandnotfound.cn ~]$ screen
  • 1

实例2:列出所有的screen会话

你可以使用-ls选项列出所有的screen会话。

[linux@bashcommandnotfound.cn ~]$ screen -ls
  • 1

实例3:重新连接到一个screen会话

你可以使用-r选项重新连接到一个已经存在的screen会话。

[linux@bashcommandnotfound.cn ~]$ screen -r [session-id]
  • 1

实例4:在screen会话中启动一个命令

你可以在启动screen会话的时候指定一个命令来运行。

[linux@bashcommandnotfound.cn ~]$ screen top
  • 1

这个命令会在新的screen会话中启动top命令。

实例5:分离一个screen会话

你可以使用Ctrl-a d快捷键来分离一个screen会话。这个命令不会停止你在screen会话中启动的命令,你可以稍后使用screen -r命令来重新连接到这个会话。

[linux@bashcommandnotfound.cn ~]$ screen
[linux@bashcommandnotfound.cn ~]$ Ctrl-a d
  • 1
  • 2

实例6:在screen会话中切换窗口

你可以使用Ctrl-a nCtrl-a p快捷键来在screen会话中的窗口之间切换。

[linux@bashcommandnotfound.cn ~]$ screen
[linux@bashcommandnotfound.cn ~]$ Ctrl-a c
[linux@bashcommandnotfound.cn ~]$ Ctrl-a n
[linux@bashcommandnotfound.cn ~]$ Ctrl-a p
  • 1
  • 2
  • 3
  • 4

实例7:在screen会话中创建新的窗口

你可以使用Ctrl-a c快捷键在screen会话中创建一个新的窗口。

[linux@bashcommandnotfound.cn ~]$ screen
[linux@bashcommandnotfound.cn ~]$ Ctrl-a c
  • 1
  • 2

实例8:在screen会话中关闭窗口

你可以使用exit命令来关闭一个screen会话中的窗口。

[linux@bashcommandnotfound.cn ~]$ screen
[linux@bashcommandnotfound.cn ~]$ exit
  • 1
  • 2

实例9:在screen会话中查看帮助

你可以使用Ctrl-a ?快捷键来查看screen命令的帮助信息。

[linux@bashcommandnotfound.cn ~]$ screen
[linux@bashcommandnotfound.cn ~]$ Ctrl-a ?
  • 1
  • 2

实例10:在screen会话中查看所有窗口列表

你可以使用Ctrl-a "快捷键来查看screen会话中所有窗口的列表。

[linux@bashcommandnotfound.cn ~]$ screen
[linux@bashcommandnotfound.cn ~]$ Ctrl-a "
  • 1
  • 2

Linux screen命令的注意事项

  • screen命令在默认情况下会在当前终端窗口中启动一个新的shell。你可以在screen命令后面添加一个命令来在新的screen会话中启动这个命令。
  • 如果你在一个screen会话中启动了一个命令,你可以使用Ctrl-a d快捷键来分离这个会话。这个命令不会停止你在screen会话中启动的命令,你可以稍后使用screen -r命令来重新连接到这个会话。
  • 如果你忘记了你的screen会话的ID,你可以使用screen -ls命令来列出所有的screen会话。

如果你在使用screen命令时遇到了bash: screen: command not found错误,你可以按照上面的指示来安装screen命令。

Linux screen相关命令

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/664796
推荐阅读
相关标签
  

闽ICP备14008679号