Linux下优雅的让程序后台运行

假设在终端上启动运行了一个程序,跑了几天,如果不小心把terminal关了,那么程序就会终止,这是SIGHUP信号的原因,即使通过bg置为后台运行同样会如此,应该让程序成为一个daemon,步骤如下:

法1

1.Ctrl+z 暂停程序的运行,可以看到程序的作业号,假设为1;
2.bg %1 置为后台运行;
3. disown -h %1 使其不受终端关闭的影响。

=> The disown command on ksh shell causes the shell not to send a HUP signal to each given job, or all active jobs if job is omitted, when a login shell terminates.

=>The disown command on bash shell can either remove jobs or causes the shell not to send a HUP signal to each given job or all jobs.

实例:

./main.py 之前是终端上正常运行的普通程序。

按上面操作之后,通过 ps -ef | awk '$3 == 1' 命令可以看到程序变成了daemon.

法二:

nohup your_command > /dev/null 2>&1 &

  1. nohup :表示所属终端关闭后,进程不会死掉;
  2. > /dev/null :标准输出重定向到 /dev/null (a dummy device that does not record any output).
  3. 2>&1 :标准出错重定向到标准输出,也到/dev/null
  4. 最后的& :后台任务

参考:

1.http://stackoverflow.com/questions/625409/how-do-i-put-an-already-running-process-under-nohup

2.http://stackoverflow.com/questions/4797050/how-to-run-process-as-background-and-never-die

Linux下优雅的让程序后台运行相关推荐

  1. linux下如何让脚本在后台运行

    在服务器中我们经常需要将一些脚本挂在后台继续运行,而不是随着我们切断一段会话就结束了运行,常见的作法有如下几种,下面就进行简单的总结: 0. bg\fg 在 Windows 上面,要么让一个程序作为服 ...

  2. Linux下让程序后台运行

    Linux下优雅的让程序后台运行   假设在终端上启动运行了一个程序,跑了几天,如果不小心把terminal关了,那么程序就会终止,这是SIGHUP信号的原因,即使通过bg置为后台运行同样会如此,应该 ...

  3. Java程序后台运行,即使关掉Putty终端

    Java程序后台运行,即使关掉Putty终端 比如,通过Putty启动远程主机上面的文件 java -cp Crawler.jar Main& 关闭Putty终端之后,这个java程序也会被中 ...

  4. matlab中并行用不了,请教matlab在linux下的并行问题 - 程序语言 - 小木虫 - 学术 科研 互动社区...

    刚在网上搜了一下,matlabpool open local 8 设置节点数,但是必须在matlab下面才行,比如我打开linux, >>matlab 进入matlab系统,然后matla ...

  5. 用C语言编写一个Linux下的简单shell程序

    这是一个简单的C程序,展示了如何进行系统调用执行logout cd ls pwd pid rm mkdir mv cp等命令,这是一个简单的命令解释程序shell,其源代码如下: #include & ...

  6. linux下的在线围棋程序--CGoban。(转)

    linux下的在线围棋程序--CGoban.(转)[@more@]在网上搞到的,我试过了,能在红旗5.0beta3下使用. 可以下在线游戏.网上还说可以单机对弈,不过我没找到此功能. 第一个附件是rp ...

  7. linux应用程序的编写实验原理,操作系统实验 1.在linux下编写一个应用程序 联合开发网 - pudn.com...

    操作系统实验 所属分类:Linux/Unix编程 开发工具:C/C++ 文件大小:1KB 下载次数:3 上传日期:2019-05-01 20:34:21 上 传 者:烟雨南风起 说明:  1.在lin ...

  8. wine在linux的运行效率,Wine(在Linux下执行Windows应用程序)V1.9.24稳定版

    Wine(在Linux下执行Windows应用程序)V1.9.24稳定版 wine是一款优秀的Linu系统平台下的模拟器软件,wine用来将Windows系统下的软件在Linux系统下稳定运行,该软件 ...

  9. Android 程序后台运行和锁屏运行

    Android 后台服务保活 需求 方案 推广一下我的个人博客小站: Z同学 期待大家的围观 需求 1.在华为手机中应用切换到后台后,打开其他app.需要我的应用后台仍然能够访问http,传输数据. ...

最新文章

  1. 如何使用React Hook
  2. C++学习笔记目录链接(持续更新中)
  3. SaltStack WEB UI Halite初体验
  4. C语言(CED)编写一个程序,求两个字符之间的加减运算。
  5. Xml之Linq遍历
  6. activiti流程变量
  7. 【前端 · 面试 】JavaScript 之你不一定会的基础题(二)
  8. 九章算法笔记 8.哈希表与堆 Hash Heap
  9. HTML2CANVAS 合成图片
  10. 新点软件怎么导入清单_【新点软件怎么导出到excel】新点造价软件怎么导入清单...
  11. hadoop--环境搭建--域名解析失败
  12. 倍福--控制汇川伺服无法使能分析
  13. ISIS几个命令的区别
  14. auther tonyxiao
  15. CUDA: 矩阵乘法优化
  16. css之-单行文本溢出显示省略号,多行文本溢出显示省略号
  17. innerHtml() 与html( )的区别
  18. 计算机职业生涯规划范文网,计算机职业生涯规划书范文
  19. 详解 springboot 多线程处理任务无法注入bean
  20. 最优控制问题matlab编程实例,matlab实现解决最优控制中的内点约束问题

热门文章

  1. 如何正确使用数据可视化图表?
  2. WPF之路——绘制几何图形
  3. Python爬虫 - scrapy - 爬取妹子图 Lv1
  4. 笔记一:认识微信小程序
  5. PCIe“拍了拍”PCI- PCI和PCIe发展历史
  6. 制图操作案例:在Pro画水墨画
  7. vite+ts+vue组合式api-c端-移动端项目(保姆级教学)
  8. 如何禁用笔记本键盘输入?屏蔽掉笔记本键盘
  9. 热烈祝贺重庆大学75周年校庆
  10. SpringBoot + FreeMarker + FlyingSaucer 实现PDF在线预览、打印、下载