centos中python程序在后台运行

使用这条命令(看解释对自己的命令进行更改)

nohup python3 -u main.py > test.log 2>&1 &

解释:

操作之前,先进入项目的目录中

    nohup 不是指定的在后台运行,但是这个nohup是让程序永久运行下去,和前后台没关系(这个不用改)
    python3 这个是对应的python命令,python一般对应的python2 ,所以我才要用python3 (一般python2有对windows上的换行符的报错问题)
    “-u”表示不启用缓存,实时输出打印信息到日志文件(如果不加-u,则会导致日志文件不会实时刷新代码中的print函数的信息)
    main.py 这个是项目的主程序,可以更改成你想要运行的程序
    > test.log 这个右括号是把你的输出的日志到后边的test.log 日志文件中(可以先在当前目录下建立test.log文件)
    2>&1 这个2表示的当出错的时候输出的错误信息 >& 这个表示重定向 1表示标准输出 ,所以结合起来就是把错误信息重定向到标准输出
    & 这个表示在后台运行

总的就是既能够使用nohup的永久运行还能在后台,所以就是在后台的永久运行。

使用这条命令(看解释对自己的命令进行更改) nohup python3 -u main.py > test.log 2>&1 & 解释: 操作之前,先进入项目的目录中 nohup 不是指定的在后台运行,但是这个nohup是让程序永久运行下去,和前后台没关系(这个不用改) python3 这个是对应的python命令,python一般对应的python2 ,所以我才要用python3 (一般python2有对windows上的换行符的报错问题) “-u”表示不启用缓存,实时输出打印信息到日志文件(如果不加-u,则会导致日志文件不会实时刷新代码中的print函数的信息) main.py 这个是项目的主程序,可以更改成你想要运行的程序 > test.log 这个右括号是把你的输出的日志到后边的test.log 日志文件中(可以先在当前目录下建立test.log文件) 2>&1 这个2表示的当出错的时候输出的错误信息 >& 这个表示重定向 1表示标准输出 ,所以结合起来就是把错误信息重定向到标准输出 & 这个表示在后台运行 总的就是既能够使用nohup的永久运行还能在后台,所以就是在后台的永久运行。
经验分享 程序员 微信小程序 职场和发展