服务器后台运行python程序-nohup命令

命令简介

nohup

nohup 命令

用途:LINUX命令用法,不挂断地运行命令。

语法:nohup Command [ Arg … ] [ & ]

描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。

如果不将 nohup 命令的输出重定向,输出将附加到当前目录的 nohup.out 文件中。如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。如果标准错误是一个终端,那么把指定的命令写给标准错误的所有输出作为标准输出重定向到相同的文件描述符。

举例

nohup python -u test.py > test.log 2>&1 &

这条命令的意思是,执行test.py程序,并把程序中执行的情况记录到test.log文件中,包括程序异常、程序中打印的信息等。
PS: 也可以把上述命令写成nohup python -u test.py > nohup.out 2>&1 &唯一的区别就是把日志信息写到nohup.out文件中去了,两种做法都行。

输入后,回车。会打印出一个进程号。
可以通过jobs命令或者ps命令查看进程号
查看后台运行的进程号
最后一步需要使用exit命令正常退出服务器,异常退出一样不能后台运行。
exit

应用场景

部署长期爬虫项目等

你可能感兴趣的:(linux)