Linux screen——创建新终端的命令

时间:2024-03-06 14:14:43

Linux screen命令用于多重视窗管理程序。

运行screen之后,可以产生一个独立运行的窗口,不受机器断电等的影响,断开连接之后再重新连接,不影响数据传输。

常用用法如下:
①开启一个名为test的终端:

screen -S  test

②查看所有的screen作业:

screen -ls

可以看到,刚刚创建的终端已经存在了,并且是Attached已连接状态

[root@test~]# screen -ls
There is a screen on:
	16136.test	(Attached)
1 Socket in /var/run/screen/S-root.

③进入一个终端,使用-r和终端名

screen -r test

如果此时是Attached状态,则这个终端无法进入:

[root@test ~]# screen -r test
There is a screen on:
	16136.test	(Attached)
There is no screen to be resumed matching test.

需要先断开连接,为detached状态再进入终端即可:

[root@test ~]# screen -d test
[16136.test detached.]

④使用kill和-wipe清理不需要的screen终端

[root@test ~]# screen -ls
There are screens on:
	16136.test	(Attached)
	12050.screen_test	(Detached)
2 Sockets in /var/run/screen/S-root.

[root@test ~]# kill -9 12050
[root@test ~]# screen -wipe
There are screens on:
	16136.test	(Attached)
	12050.screen_test	(Removed)
1 socket wiped out.
1 Socket in /var/run/screen/S-root.

[root@test ~]# screen -ls
There is a screen on:
	16136.test	(Attached)
1 Socket in /var/run/screen/S-root.

可以看到,screen_test终端已经被清理。

screen的所有详细用法可参考这个说明:

-A  将所有的视窗都调整为目前终端机的大小。
-d <作业名称>  将指定的screen作业离线。
-h <行数>  指定视窗的缓冲区行数。
-m  即使目前已在作业中的screen作业,仍强制建立新的screen作业。
-r <作业名称>  恢复离线的screen作业。
-R  先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
-s <shell>  指定建立新视窗时,所要执行的shell。
-S <作业名称>  指定screen作业的名称。
-v  显示版本信息。
-x  恢复之前离线的screen作业。
-ls或--list  显示目前所有的screen作业。
-wipe  检查目前所有的screen作业,并删除已经无法使用的screen作业