2024-04-25 02:23:52 发布
网友
我做了一个扩展脚本,当从命令行或空闲启动时运行良好。但当我试图用cron运行它时,它总是出错: IOError:[Errno 32]管道破裂
如果脚本运行时间过长,cron将关闭通常重定向到日志文件(通过cron)的stdout/stderr。在超时后尝试打印将导致管道破裂。在
一种解决方案是使用日志记录或只打印到您自己的日志文件,而不使用stdout。在
另外,cron有不同的环境,在crontab或cron(daily | hourly |…)文件的顶部指定。请确保它是正确的,尤其是当您依赖于在登录时设置的路径或HOME时。在
在没有实际看到cron命令的一个示例或脚本的功能的情况下,我假设您的脚本中有一个popen或aome子进程命令。它试图将输出写入一个可能不存在于cron上下文中的管道。尝试将命令的outlut记录到文件中。在
如果脚本运行时间过长,cron将关闭通常重定向到日志文件(通过cron)的stdout/stderr。在超时后尝试打印将导致管道破裂。在
一种解决方案是使用日志记录或只打印到您自己的日志文件,而不使用stdout。在
另外,cron有不同的环境,在crontab或cron(daily | hourly |…)文件的顶部指定。请确保它是正确的,尤其是当您依赖于在登录时设置的路径或HOME时。在
在没有实际看到cron命令的一个示例或脚本的功能的情况下,我假设您的脚本中有一个popen或aome子进程命令。它试图将输出写入一个可能不存在于cron上下文中的管道。尝试将命令的outlut记录到文件中。在
相关问题 更多 >
编程相关推荐