nohup 命令简介

  nohup命令就是不挂断的运行命令,适用于我们想让程序在后台执行,而不一直占用当前终端或者不把程序的log输出到终端中。程序放在后台运行,我们可以正常使用终端,并且程序会把日志默认输出到nohup.out文件中。

  之前在服务器上跑代码,我都是直接起一个tmux,然后让程序跑起来,关掉终端代码还是回照常运行,但是这样日志可能会一直打印到终端上,对于后续的分析日志不便。看到有同事使用nohup,自己也尝试了一下。
1、第一种使用方式

nohup command &

command就是我们要执行的命令,可以是一段shell脚本,也可以是编译之后的可执行文件,上面的意思就是不中断的执行command命令,并且把日志输出到当前文件夹下面的nohup.out文件中。如果当前目录下的nohup.out文件不可写,则输出到$HOME/nohup.out文件中。如果没有文件可以创建或者写,command命令就不可执行。 &符号就是在后台运行。

2、第二种使用方式

nohup command > myout.txt 2>&1 &

上面命令的意思是将日志输出到指定的myout.txt的文件中,2>& 1意思是标注输出/错误重定向到指定的文件中,最后的&的符号就是在后台运行。

执行完上述命令后我们可以exit正常退出终端,程序一直在后台运行。
也可以使用 jobs -l来查看我们的进程

你可能感兴趣的:(Linux)