Linux让程序后台运行命令之screen与nohup
Linux让程序后台运行命令之screen与nohup
很多朋友可能在实际的linux服务器管理工作中,经常会为一些长时间运行的任务而头疼,当有事离开我们关掉了连接终端断开SSH后,刚才运行着的程序也自动被中断。下面就介绍下如何让我们的程序在断开SSH后继续在后行运行的方法。
一、使用nohup让程序在后台继续运行
常用命令:nohup ./home/nginx.sh &
* 如果运行成功刚默认会将标准输出重定向到当前目录的nohup.out文件中,查看此文件,可以了解运行的进度;
二、使用screen让程序在后台执行
screen是一个可以在多个进程之间多路利用一个物理终端的窗口管理器。Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。
1、安装screen
yum install screen
2、创建screen会话
screen -S wordname
3、暂时离开,保留screen会话中的任务或程序
当需要临时离开时(会话中的程序不会关闭,仍在运行)可以用快捷键Ctrl+a d(即按住Ctrl,依次再按a,d)
4、恢复screen会话
当回来时可以再执行执行:screen -r wordname 即可恢复到离开前创建的lnmp会话的工作界面。
如果忘记或者刚开始没有指定会话名,执行screen -ls列出当前的会话列表;
1 2 3 4 5 |
[root@LF ~]# screen -ls There are screens on: 12738.wordname (Detached) 12839.hte1 (Detached) 2 Sockets in /var/run/screen/S-root |
12738.wordname即为即才screen创建的会话,恢复回话:screen -r 12738
5、关闭screen会话
执行:exit
6、远程演示
首先在服务器上执行screen -S test创建一个screen的会话,观众可以链接到 远程服务器执行screen -x test 这样观众的屏幕上就会出现和演示者同步的内容。
7、常用的快捷键
Ctrl + a c 在当前screen会话中创建窗口
Ctrl + a w 窗口列表
Ctrl + a n 下一个窗口
Ctrl + a p 上一个窗口
Ctrl + a 0-9 在第0个窗口和第9个窗口之间切换
posted on 2012-12-14 12:31 Richard.FreeBSD 阅读(2719) 评论(0) 编辑 收藏 举报