Linux中长时间运行程序的方法
一、场景:
如果临时有一个命令需要长时间运行,比如 python hello.py ,什么方法能最简便的保证它在后台稳定运行呢?
解决方法:
当用户注销(logout)或者网络断开时,终端会收到 HUP(hangup)信号从而关闭其所有子进程。
因此,我们的解决办法就有两种途径:要么让进程忽略 HUP 信号,要么让进程运行在新的会话里从而成为不属于此终端的子进程。
二、nohup
nohup 无疑是我们首先想到的办法。顾名思义,nohup 的用途就是让提交的命令忽略 hangup 信号。
只需在要处理的命令前加上 nohup 即可,标准输出和标准错误缺省会被重定向到 nohup.out 文件中。一般我们可在结尾加上"&"来将
命令同时放入后台运行
nohup python hello.py &
Linux中长时间运行程序的方法的更多相关文章
- 如何在Linux实现自动运行程序
1.开机启动时 Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init. init根据配置文件继续引导过程,启动其它进程.通常情况下,修改放置在 /etc/rc或 /etc/rc. ...
- Windows/Linux获取当前运行程序的绝对路径
windows 获取当前运行程序的绝对路径(.exe) GetModuleFileNameA()函数获取绝对路径,不过文件路径中的反斜杠需要进行替换. ]; GetModuleFileNameA(NU ...
- linux 系统shell运行程序不退出
如果通过ssh远程连接到linux系统终端,在shell下执行程序.假如程序名称为app,且程序本身会一直执行不退出,程序执行需要参数文件paramfile. 当我们用 ./app paramfile ...
- windows服务编写和“以管理员运行”程序的方法
本文将首先解释如何 创建 一个定期查询可用物理内存并将结果写入某个文本文件的服务.然后指导你完成生成,安装和实现服务的整个过程. 第一步:主函数和全局定义 首先,包含所需的头文件.例子要调用 Win3 ...
- /etc/rc.local 与 /etc/init.d Linux 开机自动运行程序
1. /etc/rc.local 这是使用者自订开机启动程序,把需要开机自动运行的程序写在这个脚本里 --------引用---------------------- 在完成 run level 3 ...
- 用VC2010以上版本编译可以在低版本XP和2003的运行程序的方法
2013-09-17 作者:佚名 来源:本站整理 浏览:2001 评论:1 一直以来倍受此事困拢,vc2010以上版本编译出的exe或dll总是会引用kernel32.dll的En ...
- linux 下恢复后台程序的方法
一直以为这个东西不怎么重要,所以一直没怎么去记,已经第三次百度了,不想再有第四次. 如果你在终端下运行一个程序,如果这个程序正在运行,我们可以用 ctrl + z 的命令将这个程序挂到后台. desk ...
- linux之后台运行程序 nohup和& 的区别
1.nohup 用途:不挂断地运行命令,即使终端ssh关闭了也一直运行. 语法:nohup Command [ Arg … ] [ & ] 例:nohup start.sh & 无论是 ...
- 追踪MySQL中长时间运行的事务
接上一篇,未提交的事务导致锁等待,锁住一段时间后又提交了(也可能是回滚),锁释放业务继续运行.那么我们如何知道产生锁的事务是在跑什么SQL? 今天讲的这个工具,就可以通过监听3306端口的数据,把每个 ...
随机推荐
- Django之models模块
一.字段 1. AutoField(Field) int自增列,必须填入参数 primary_key=True 2.BigAutoField(AutoField) bigint自增列,必须填入参数 p ...
- ssm项目集成
ssm项目集成 说明:ssm指的是 spring + springMvc+ mybatis,是目前开发比较流行的集成方式,可以较好的实现前后端分离 spring与mybatis的集成,是通过配置文件a ...
- 如何用Jmeter做接口测试
Jmeter介绍&测试准备: Jmeter介绍:Jmeter是软件行业里面比较常用的接口.性能测试工具,下面介绍下如何用Jmeter做接口测试以及如何用它连接MySQL数据库. 前期准备:测试 ...
- LCT能干啥???
LCT能干啥 模板: 维护可加的树链信息:询问都是一条链上的信息:维护方式和线段树差不多: 增加一条边: 删除一条边: 修改一个点权: 修改一条路径上的所有点的点权: 整体来说 ...
- Centos6、Centos7防火墙基本操作整理
Centos7: 查看防火墙状态: firewall-cmd --state 开启防火墙: systemctl start firewalld.service 关闭防火墙(重启失效): systemc ...
- C语言程序设计100例之(25):确定进制
例25 确定进制 问题描述 6*9 = 42 对于十进制来说是错误的,但是对于13进制来说是正确的.即 6(13)* 9(13)= 42(13),因为,在十三进制中,42 = 4 * 13 + ...
- Java并发的若干基本陷阱、原理及解决方案
勿止于结论:持续探索与求证. 概述 为什么要使用并发 ? 有三点足够信服的理由: 性能提升.单核 CPU 的性能基本抵达瓶颈,充分挖掘多核 CPU 的能力,使得性能提升变成水平可扩展的. 事件本质.世 ...
- Graylog 笔记
安装 基本上有3种方式,1 yum安装2 rpm安装3 docker安装 yum安装 yum安装,参照官方文档是最好的:http://docs.graylog.org/en/3.0/pages/ins ...
- C#中类的实例化过程
创建某个类型的第一个实例时,所进行的操作顺序为:1.静态变量设置为02.执行静态变量初始化器3.执行基类的静态构造函数4.执行静态构造函数5.实例变量设置为06.执行衯变量初始化器7.执行基类中合适的 ...
- 阿里iconfont的使用
1.找到阿里巴巴图标库 2.找到图标 3.搜索你想要的图标 4.将图标添加到购物车 5.点击右上角的购物车按钮,我这里添加了两个. 6.提示你登陆,不需要花钱,找其中一个账号登陆一下就行了 假如你使用 ...