首页 > 技术文章 > Linux后台运行程序

wardensky 2014-12-14 19:30 原文

Linux后台运行程序

最近写的程序需要部署到Linux服务器上,按照以前的方式,在运行后面增加&,程序会切换为后台运行。但因为Linux一般是通过ssh远程登录的,等到退出当前session之后,刚才那个后台程序也会停止运行,为了解决这个问题,通过nohup命令执行后台程序。

nohup ./run.bat &

然而,通过nohup执行的程序,会把输出重定向到一个nohup.out文件中,但我的程序本身已经有输出了。运行了大概10天左右,nohup.out文件已经有10G左右了。
为了去掉nohup的日志输出,需要利用Linux的重定向,把日志重定向到/dev/null中。

nohup ./run.bat >/dev/null 2>&1 &

这样,nohup就不会有任何输出了。

参考:
Linux 技巧:让进程在后台可靠运行的几种方法
linux的nohup命令的用法
nohup不输出日志信息的方法,及linux重定向学习
linux中的输入从定向和输出重定向

推荐阅读