Linux下使Shell 命令脱离终端在后台运行
2016-04-21 10:16
806 查看
用python写了一个的小监控程序,监控公司生产系统对外web访问的状况,以及某个特定业务的状况。
程序部署在阿里云的一台虚拟机上,简单的用终端命令开启,结果几天后发现监控程序才运行几个小时就退出了,原来是terminal session过期后,程序自动退出。
参考下面文章,采用 “nohup yourcommand &” 方式执行,一切OK
Linux下使Shell 命令脱离终端在后台运行
http://www.linuxidc.com/Linux/2011-05/35723.htm
你是否遇到过这样的情况:从终端软件登录远程的Linux主机,将一堆很大的文件压缩为一个.tar.gz文件,连续压缩了半个小时还没有完成,这时,突然你断网了,你登录不上远程Linux主机了,那么前面的半个小时就会前功尽弃,你非常气愤……
在Linux下,如果你要执行的shell命令耗时特别长,并且:(1)你的网络不稳定,随时可能断网;或者(2)你在执行了shell命令之后必须要关闭终端软件(例如SecureCRT)。
那么你就需要以脱离终端的方式在后台运行这个shell命令。
方法如下:
(1)输入命令:
nohup 你的shell命令 &
(2)回车,使终端回到shell命令行;
(3)输入exit命令退出终端:
exit
(4)现在可以关闭你的终端软件了,等过足够的时间,让你的shell命令执行完了再上去看结果吧。
其中,nohup命令可以让你的shell命令忽略SIGHUP信号,即可以使之脱离终端运行;“&”可以让你的命令在后台运行。
以脱离终端的方式在后台运行shell命令有这样几个好处:只要你执行过了命令,那么你的网络中断不会对你有任何影响,并且你就可以关闭终端软件了。
程序部署在阿里云的一台虚拟机上,简单的用终端命令开启,结果几天后发现监控程序才运行几个小时就退出了,原来是terminal session过期后,程序自动退出。
参考下面文章,采用 “nohup yourcommand &” 方式执行,一切OK
Linux下使Shell 命令脱离终端在后台运行
http://www.linuxidc.com/Linux/2011-05/35723.htm
你是否遇到过这样的情况:从终端软件登录远程的Linux主机,将一堆很大的文件压缩为一个.tar.gz文件,连续压缩了半个小时还没有完成,这时,突然你断网了,你登录不上远程Linux主机了,那么前面的半个小时就会前功尽弃,你非常气愤……
在Linux下,如果你要执行的shell命令耗时特别长,并且:(1)你的网络不稳定,随时可能断网;或者(2)你在执行了shell命令之后必须要关闭终端软件(例如SecureCRT)。
那么你就需要以脱离终端的方式在后台运行这个shell命令。
方法如下:
(1)输入命令:
nohup 你的shell命令 &
(2)回车,使终端回到shell命令行;
(3)输入exit命令退出终端:
exit
(4)现在可以关闭你的终端软件了,等过足够的时间,让你的shell命令执行完了再上去看结果吧。
其中,nohup命令可以让你的shell命令忽略SIGHUP信号,即可以使之脱离终端运行;“&”可以让你的命令在后台运行。
以脱离终端的方式在后台运行shell命令有这样几个好处:只要你执行过了命令,那么你的网络中断不会对你有任何影响,并且你就可以关闭终端软件了。
相关文章推荐
- bash 脚本中分号的作用
- Mini-Shell with pipeline
- Mini-Shell without pipes
- Android adb shell学习心得(四)
- shell中各种括号的作用()、(())、[]、[[]]、{}
- Linux命令之for - Bash中的For循环
- shell 标出输入、标准输出、错误输出
- 自己实现简单shell的小例子
- 实现自己的shell框架
- linux shell expr 使用
- Linux进阶之bash编程(流程控制-for循环)
- shell笔记
- shell 命令学习
- 安装CocoaPods 出错-bash: $: command not found
- GPShell install on Ubuntu trusty 14.04
- 命令行和Shell
- windows azure通过powershell打开关闭虚拟机
- 升级10.11后使用CocoaPod出现-bash: pod: command not found 解决办法
- Shell调试
- MySQL 5.7.12新增MySQL Shell命令行功能