linux下后台运行程序
背景
后台运行程序的时候,如果退出当前的终端(session),你运行的所有程序(包括后台程序),都将被关闭。
原因是:你运行的程序都是你的终端进程的子进程,父进程gg了,子进程也会被干掉。
nohup、setsid和pm2可以帮助我们。
nohup命令
使用方法:
nohup ping baidu.com &
作用:
所有的输出将会被重定向到当前目录的nohup.txt文件下,可以用
tail -f nohup.txt来跟踪输出结果。
注意事项:
- 使用这个命令不能直接关闭你的终端(直接点击×退出),而要规范地使用
exit退出,否则系统可能认为你是异常退出,而关闭你所有的子进程,特别是node项目。既然这么坑,node项目就绝不能使用nohup,建议下文所说的pm2。
setsid命令
setsid与nohup不一样,setsid的父进程是init。
使用方式:
setsid ping baidu.com
作用:
- 输出结果还是会出现在终端上,但是你可以在此终端运行其他的程序。
- 如果想要重定向输出结果,可以使用
setsid ping baidu.com >> output.txt
pm2
pm2专门用于管理node的项目。
可以看我另一篇文章:用pm2命令管理你的node项目
linux下后台运行程序的更多相关文章
- 使程序在Linux下后台运行
一.为什么要使程序在后台执行 我们计算的程序都是周期很长的,通常要几个小时甚至一个星期.我们用的环境是用putty远程连接到日本Linux服务器.所以使程序在后台跑有以下三个好处: 1:我们这边是否关 ...
- 【转】使程序在Linux下后台运行 (关掉终端继续让程序运行的方法)
一.为什么要使程序在后台执行 我们计算的程序都是周期很长的,通常要几个小时甚至一个星期.我们用的环境是用putty远程连接到日本Linux服务器.所以使程序在后台跑有以下三个好处: 1:我们这边是否关 ...
- 使程序在Linux下后台运行 (关掉终端继续让程序运行的方法)
你是否遇到过这样的情况:从终端软件登录远程的Linux主机,将一堆很大的文件压缩为一个.tar.gz文件,连续压缩了半个小时还没有完成,这时,突然你断网了,你登录不上远程Linux主机了,那么前面的半 ...
- 使程序在Linux下后台运行,程序运行前后台切换
一.为什么要使程序在后台执行 我们计算的程序都是周期很长的,通常要几个小时甚至一个星期.我们用的环境是用putty远程连接到日本Linux服务器.所以使程序在后台跑有以下三个好处: 1:我们这边是否关 ...
- 经验分享:分析如何使程序在Linux下后台运行---Linux就该这么学!
转至:https://www.cnblogs.com/maoju/p/13848740.html 一.为什么要使程序在后台执行 我们计算的程序都是周期很长的,通常要几个小时甚至一个星期.我们用的环 ...
- linux下后台运行MATLAB
原帖:http://sypeterli1.blog.163.com/blog/static/2283740492013101745824207/ 后台运行matlab脚本文件的方法:nohup ...
- linux之后台运行程序 nohup和& 的区别
1.nohup 用途:不挂断地运行命令,即使终端ssh关闭了也一直运行. 语法:nohup Command [ Arg … ] [ & ] 例:nohup start.sh & 无论是 ...
- linux服务器后台运行程序
让程序脱离终端单独运行 nohub ... & 重新连接ssh后,ps ux 可以查看所有后台程序
- linux 下后台运行python脚本
这两天要在服务器端一直运行一个Python脚本,当然就想到了在命令后面加&符号 $ python /data/python/server.py >python.log &说明: ...
- windows下后台运行程序
方法一:使用vbs启动,新建一个vbs脚本,内容如下: set ws=WScript.CreateObject("WScript.Shell") ws.Run 方法二:将程序注册成 ...
随机推荐
- C#类型后加问号?
C# 可空类型(Nullable)说明_w3cschool 细说Nullable<T>类型 - Sweet-Tang - 博客园 (cnblogs.com) 值类型变量不能null,加问号 ...
- dotnet 读 WPF 源代码笔记 渲染层是如何将字符 GlyphRun 画出来的
从业务代码构建出来 GlyphRun 对象,在 WPF 的渲染层里,如何利用 GlyphRun 提供的数据将字符在界面呈现出来.本文将和大家聊聊从 WPF 的渲染层获取到 GlyphRun 数据,到调 ...
- 笔记06-第六讲 Cadence同一页面建立电气互连
笔记06-第六讲 Cadence同一页面建立电气互连 内容: 90度和任意角度连线; 连线方式; 十字线添加/删除连接点; Net alias; 无连接的管脚处理; 注意事项. 连线有两种方式,右侧工 ...
- js实现懒加载原理
概念:对于页面有很多静态资源的情况下(比如网商购物页面),为了节省用户流量和提高页面性能,可以在用户浏览到当前资源的时候,再对资源进行请求和加载.原理:当图片元素的偏移高度<=设备高度+滚动条与 ...
- golang将切片或数组进行分组
例子一: golang 数组分割 需求:给定一个数组和一个正整数,要求把数组分割成多个正整数大小的数组,如果不够分,则最后一个数组分到剩余的所有元素. package main import ( &q ...
- nodejs搭建chatgpt服务
5分钟快速搭建基于nodejs的chatgpt服务 写在前面 首先大家都知道,在国内是无法成功调用openapi的接口,甚至openai的官网都很难打开.所以如果想使用chatgpt的几乎是不可能,不 ...
- ༺$Musique$༻
往期链接在文末 最近好喜欢听一些有年代感的歌啊. ~~头图~~ <$ On\ \And \ On $> Hold me close til I get up Time is barely ...
- 定了!航天科技AIRIOT 物联网平台新品发布会,6月6日北京见!
AIRIOT新品发布会预告 航天科技定档6月6日举办AIRIOT新品发布会,诚邀大家共同见证4.0版本的创新与赋能! 活动地点:北京雍和航星科技园. 现场参会请通过下方长图二维码进行报名! 亦可预约直 ...
- Sass预处理器 常见函数的基本使用
Sass提供了许多内置模块,其中包含有用的函数(以及mixin).这些模块可以像任何用户定义的样式表一样使用@use规则加载,它们的函数可以像任何其他模块成员一样调用.所有内置模块URL都以sass开 ...
- Web Service和Web API理解和使用场景
Web Service 理解:Web Service 是一种基于网络的服务,它使用标准化的消息传递协议,最典型的是基于 SOAP(Simple Object Access Protocol)协议.SO ...