当你使用SSH登录VPS下载大的文件,比如下载10G的文件,你总不能坐在电脑旁或者开机让它下载吧。当你编译源文件的时候,网络突然断开了,那是很糟的一件事情,因为有可能你重新编译的时候会失败,于是你只有重装系统的选择了。但Linux的screen命令能避免这些灾难。下面以Centos 6.5 64位系统为例
man screen查看系统介绍
Linux screen能做什么
screen为多重视窗管理程序。此处所谓的视窗,是指一个全屏幕的文字模式画面。通常只有在使用telnet登入主机或是使用老式的终端机时,才有可能用到screen程序。screen能在一个终端程序执行多个任务,离线执行任务等。
安装screen命令
有可能有些系统已经安装有screen了。但我们不确定是否安装有的情况下执行以下命令确认。
which screen
如果你没有安装有screen,可以到以下网站搜索适合你的系统的RPM包。
http://www.rpmfind.net/linux/rpm2html/search.php?query=screen
比如centos64位的,可以执行以下命令安装。
在线安装
直接键入命令:yum install screen
离线安装(通过上面的网址下载与系统对应的RPM安装包)
第一步删除系统原来自带的screen(不可用)
-
<span style="font-size:14px;">[root@datacenter6 ~]# rpm -qa|grep -i screen
-
gnome-screensaver-2.28.3-28.el6.x86_64
-
[root@datacenter6 ~]# rpm -e gnome-screensaver-2.28.3-28.el6.x86_64 --nodeps</span>
第二步开始安装
-
<span style="font-size:14px;">[root@datacenter6 src]# rpm -ivh screen-4.0.3-16.el6.x86_64.rpm</span>
使用screen
键入以下命令启动screen,之后会生成一个会话窗口。
现在你处于新的会话窗口中,你可以执行任何命令。
管理会话的语法是:ctrl-a 指令,比如ctrl-a c表示创建新的会话窗口,更多的命令可以键入ctrl-a ?查看,如图。
多窗口多任务功能
打开一个新窗口,你可以执行"ctrl-a"和"c"新建,接着你可以执行任何命令,比如“top”来监控cpu,内存等的使用率情况。
切换下一个窗口,可以使用 “Ctrl-A “n”,切换上一个窗口可以使用 “Ctrl-A “p”。
离开screen
完成终止一个会话可以使用“Ctrl-A” “K” 或"exit"命令结束。
保留会话但关闭窗口可以使用“Ctrl-A” “d”命令,这样下次你可以连接此会话。
连接screen
我们可以执行以下命令来查看会话列表。
There are screens on:
31619.ttyp2.gigan (Detached)
4731.ttyp2.gigan (Detached)
2 Sockets in /tmp/screens/S-root.
这里我们看到有两个不同的会话。为了重新连接会话,我们可以执行以下命令。
-
screen -r 31619.ttyp2.gigan
screen参数
-A 将所有的视窗都调整为目前终端机的大小。
-d<作业名称> 将指定的screen作业离线。
-h<行数> 指定视窗的缓冲区行数。
-m 即使目前已在作业中的screen作业,仍强制建立新的screen作业。
-r<作业名称> 恢复离线的screen作业。
-R 先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
-s 指定建立新视窗时,所要执行的shell。
-S<作业名称> 指定screen作业的名称。
-v 显示版本信息。
-x 恢复之前离线的screen作业。
-ls或--list 显示目前所有的screen作业。
-wipe 检查目前所有的screen作业,并删除已经无法使用的screen作业。
(责任编辑:IT) |