无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 3815|回复: 5
打印 上一主题 下一主题

screen用法

[复制链接]
跳转到指定楼层
1#
发表于 2011-3-19 01:37:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
screen 是一个特殊的模拟终端软件,利用它能在一个终端窗口里模拟出多个终端
并且能分割窗口、类似 VI 的方式搜索和拷贝屏幕输出,最重要的是利用
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作业


创建一个screen:
[root@localhost ~]# screen                                       回车后会跳到新的窗口当中
[root@localhost ~]# screen -ls                                   查看所有screen进程
There are screens on:
        1000.pts-5.localhost    (Attached)
        2000.tty1.localhost     (Detached)
        3000.hehe       (Dead ???)
        4000.pts-4.localhost    (Detached)
        5000.haha       (Detached)
Remove dead screens with 'screen -wipe'.
5 Sockets in /var/run/screen/S-root.

#1000.pts-5.localhost    (Attached)这个进程就是刚才用screen创建的,1000是系统默认分配的PID进程号
#2000.tty1.localhost     (Detached)tty.localhost是用本机创建的,pts-5.locahost是我用远程工具(putty)连上去的
#3000.hehe       (Detached)这个是我另外建的,命令用法是[root@localhost ~]# screen -S hehe

screen状态有三种:
Attached           目前正在工作当中,当使用Ctrl+a+d就会退出工作状态,状态就会变成Detached,但是还是后台工作的
Datached           在后台工作当中,也可以在Attached状态时使用命令[root@localhost ~]# screen -r 1000让其变成Datached状态
Dead ???            死亡状态,这个需要用的命令是[root@localhost ~]# kill -9 3000,如果已经是Dead状态,用这命令是会报错的,只能去杀前两种状态的screen进程
Removed           当使用[root@localhost ~]#screen -wipe删掉某个screen进程的时候显示

进入已存在screen
[root@localhost ~]# screen -r PID进入Datached状态的screen
[root@localhost ~]# screen -x PID进入Attached状态的screen

改变screen状态
[root@localhost ~]# screen -d PID将Attached状态的screen变成Datached

退出screen:
Attached状态下[root@localhost ~]# exit
Datached状态下将其变成Attached然后再用exit退出。[root@localhost ~]# screen -r 2000
Detached状态还有一种是卡住的,在Attached下使用某些命令如:[root@localhost ~]#rz该命令是从本地上传文件到linux上,(提示:最好在远程工具中使用该命令,因为此时会卡住,...可能到时你只能通过重启机器才能解决),如果利用远程工具的话,这时你就可关掉它,重登再把该卡住的进程利用[root@localhost ~]# kill -9 3000来杀死它
Dead ???状态的screen进程就很好解决了[root@localhost ~]#screen -wipe杀掉所有Dead ???进程,如果加进程号,只删掉单个。

很多没接触过screen命令的人可能还是知道这命令到底有什么用,目前我用到该命令是因为邮件服务器上要迁移,这服务器都是远程连过去的,这时你得先打包吧,如果打包到一半的时候网络断了怎么办呢,包大的话,有时可能打包都需要一天的时间。再加上传输,速度慢的话,服务器可能传上好几天。这边的断掉是我跟服务器的网络断掉,如果服务器跟服务器的网络断掉,那也只能自认倒霉了。呵呵!
工作了就是忙,好久没上无忧了。
2#
发表于 2011-3-19 07:14:53 | 只看该作者
是不是和虚拟机的系统快照意思差不多吧?
回复

使用道具 举报

3#
 楼主| 发表于 2011-3-19 11:36:51 | 只看该作者

回复 #2 my9823 的帖子

不是,screen是让你所做的操作在linux后台运行,还不理解的话,只能自己去linux试一试了。
系统快照应该说跟win7的睡眠差不多。
回复

使用道具 举报

4#
发表于 2011-3-19 13:44:30 | 只看该作者
不是有bg 、fg和jobs命令么?
回复

使用道具 举报

5#
发表于 2011-3-19 13:47:15 | 只看该作者
还有在命令后边加&不是也能在后台运行么?
回复

使用道具 举报

6#
发表于 2011-3-19 19:08:54 | 只看该作者

回复 #5 my9823 的帖子

有些蛋疼的程序, 没有console不能运行. 也就是, 他们本身无法后台运行.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-12-10 21:39

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表