您的位置:首页 > 其它

screen命令让断开SSH/TELNET的你依然可以保持程序继续运行工作

2012-12-17 09:59 441 查看
这几天研究CENTOS,一直在SSH上操作,感觉很爽。但是有时一不小心断网什么的,SSH上正在编译的那些程序就白费了!特别是编译那些很久很久的程序时,特别心疼。有时候下课了也要等他编译完才敢走。现在发现一个好命令"screen"说他是命令,不如说它工具,因为它不是系统自带的。一般装最小化的LINUX如CENTOS等都要自己装,CENTOS可以用yum来装:

Linux 命令

yum install screen

这里是screen的命令介绍:

输入

Linux 命令

screen

之后就可以使用快捷键了:

Ctrl +a c,新创建一个screen回话。如果你用 putty/pietty,你只能再开一个 putty/pietty 了,而 screen 不用那么麻烦。

Ctrl+a a,在现在使用的和上一个使用的终端之间切换。

Ctrl+a 1,切换到第一个终端。

Ctrl+a Ctrl+2,切换到第二个终端。

Ctrl+a d,这个是你最关心的。比如:你在用源码编译一个东西,运行了 ./configure,时间比较长(地球人都知道),而这时候你必须断开 ssh 连接,但是你又不希望用 Ctrl+C 中断这个 configure 过程,那你就来一个 Ctrl+a d 吧,它会在后台继续工作的。之后就可以关闭SSH。

PS:按快捷键的方法是:先Ctrl和a一起按,之后放手,再按c

那么就会问了,断开后怎么重新进入之前的screen回话呢?

登陆SSH后,我们只用输入:

Linux 命令

screen -r

PS:如果在已经输入过screen命令后再输入screen,就会开启另一个screen程序,所以应该是输入screen -r

如果只开了一个screen程序,就会进入直接进入那一个

如果开了多个就会显示类似如下的信息:

Linux 回显

[root@堕落∮木头 ~]# screen -r
There are several suitable screens on:
9690.pts-0.173-252-201-217 (Detached)
9482.pts-0.173-252-201-217 (Detached)
9549.pts-0.173-252-201-217 (Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.

这个时候,输入

Linux 命令

screen -r 9549

就能进入第三个screen程序,在里面就可以用快捷键切换之前开启的回话。

原文地址:
http://www.hackerbug.com/archives/39.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: