• 技术文章 >常见问题 >Python常见问题

    使用nohup运行python报错

    yangyang2020-04-15 13:32:30原创3079

    在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 test.py时,输出是这个样子的

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

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

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

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

    更多Python知识请关注Python视频教程栏目。

    专题推荐:python
    上一篇:python将excel数据合并的方法 下一篇:python如何执行dos命令

    相关文章推荐

    • python如何实现手动输入文字• python报302错误解决方法• python能开发前端吗• 如何利用python快速生成大文件

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网