当用cron运行python时,“管道破裂”

2024-04-25 02:23:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我做了一个扩展脚本,当从命令行或空闲启动时运行良好。但当我试图用cron运行它时,它总是出错: IOError:[Errno 32]管道破裂


Tags: 命令行脚本管道空闲cronerrnoioerror试图用
2条回答

如果脚本运行时间过长,cron将关闭通常重定向到日志文件(通过cron)的stdout/stderr。在超时后尝试打印将导致管道破裂。在

一种解决方案是使用日志记录或只打印到您自己的日志文件,而不使用stdout。在

另外,cron有不同的环境,在crontab或cron(daily | hourly |…)文件的顶部指定。请确保它是正确的,尤其是当您依赖于在登录时设置的路径或HOME时。在

在没有实际看到cron命令的一个示例或脚本的功能的情况下,我假设您的脚本中有一个popen或aome子进程命令。它试图将输出写入一个可能不存在于cron上下文中的管道。尝试将命令的outlut记录到文件中。在

相关问题 更多 >