知行编程网知行编程网  2022-12-11 09:00 知行编程网 隐藏边栏  39 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于使用nohup运行python报错的相关知识,希望可以帮到处于编程学习途中的小伙伴

使用nohup运行python报错

linux下直接使用python运行的文件test.py即可。如果使用nohup python test.py,会报错。报错大致是Import error: No module named XXX。

出现这种情况是因为nohup找到的python路径不对导致的。

那么nohup找的的路径是什么呢?

新建了一个python文件,文件内容是这样的:

import sys
print(sys.path)

当使用python test.py运行文件时,输出是:

使用nohup运行python报错

当使用nohup python test.py时,输出是这个样子的

使用nohup运行python报错

也就是说使用python3直接运行python命令,但是nohup找到的python路径是python2。这时候需要指定python版本才能运行py文件。

这时,只要指定python版本来运行nohup文件即可:

也就是:nohup //usr/local/python3/bin/python3 test.py > log.txt2>&1 &。

其中1代表标准输出,2代表标准错误输出,2>&1是将标准错误输出重定向到标准输出,即把标准输出和标准错误输出都输出到log.txt文件, 而最后的 & 会将程序变成后台守护进程,这样运行的程序就不会随着终端挂掉而停止。

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享