在远程服务器上运行一些时间周期很长的程序时,我们通常希望程序能够在服务器的后台保持不间断的运行并打印日志信息到某个日志文件,直至程序运行结束。下面介绍了在linux/ubuntu系统内怎样使.py文件或sh脚本在后台保持不间断的运行,并将我们希望看到的日志信息保存在文本文件中。
nohup:使得程序不会被中断信号所干扰,当本地机断开与远程服务器的连接后仍然能保持程序运行。
&:加在命令行末尾时起到使程序后台运行的作用
2>&1:重定向命令,2表示错误输出,1表示标准输出,使用该命令能够使报错信息也输出到标准输出流中,便于查看程序运行日志
> log.txt : 使打印的日志信息输出到当前目录的log.txt中
对于.py文件,在对应路径下运行远程终端命令行指令:
nohup python -u xxx.py >log.txt 2>&1 &
对于.sh脚本文件,在对应路径下运行远程终端命令行指令:
nohup sh xxx.sh >log.txt 2>&1 &