解决nohup执行python程序log文件写入不及时的问题

yipeiwu_com5年前Python基础

问题

今天用nohup后台执行python程序,并将标准输出和错误输出重定向到一个log文件,但发现log文件隔好久才会更新,很煎熬。。。然而正常屏幕输出时候非常及时。

不确定程序是不是在正常运行。

运行脚本举例:

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

原因

python的输出进行了缓冲,导致test.log并不能够马上看到输出。

解决方案

为python添加-u 参数,使得python不启用缓冲。

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

并实时追踪文件输出到屏幕:

tailf test.log

以上这篇解决nohup执行python程序log文件写入不及时的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python hook监听事件详解

python hook监听事件详解

本文实例为大家分享了python hook监听事件的具体代码,供大家参考,具体内容如下 # -*- coding: utf-8 -*- # # by oldj http://ol...

Python中字符串的常见操作技巧总结

本文实例总结了Python中字符串的常见操作技巧。分享给大家供大家参考,具体如下: 反转一个字符串 >>> S = 'abcdefghijklmnop' >&...

Python并行分布式框架Celery详解

Python并行分布式框架Celery详解

Celery 简介 除了redis,还可以使用另外一个神器---Celery。Celery是一个异步任务的调度工具。 Celery 是 Distributed Task Queue,分...

Python 异常处理Ⅳ过程图解

Python 异常处理Ⅳ过程图解

异常的参数 一个异常可以带上参数,可作为输出的异常信息参数。 你可以通过except语句来捕获异常的参数,如下所示: 变量接收的异常值通常包含在异常的语句中。在元组的表单中变量可以接...

Ubuntu下Python2与Python3的共存问题

Linux系统一般自带Python,有时候又自己下载了Python,因此有可能Python2和Python3同时存在。那么当我们在Terminal键入python的时候,会调出哪个Pyt...