python - Windows 仅在进程停止后写入文件
问题描述
我写了一个非常简单的脚本来测试 windows 机器的重定向stdout
。程序是这样的
# hw.py
def main():
print('Hello World')
import time
time.sleep(1000)
if __name__ == '__main__':
main()
我使用以下命令运行了这个脚本。
python3 hw.py > hw.log
hw.log
通过使用tail -f
git bash 或打开缓冲区实时观察emacs
,我注意到它'Hello World'
仅hw.log
在进程结束时打印,或者过早取消。
这意味着在将程序输出写入文件时,我无法实时查看程序输出。更糟糕的是,如果我的程序包含无限的子进程,则程序的任何输出都不会写入文件
我该如何解决这个问题?
解决方案
推荐阅读
- python - ssh 运行命令给出了与在本地运行它不同的结果
- c# - 安慰检查 C# 中是否存在特定队列?
- c# - c# ef core RemoveRange 约束冲突
- regex - 使用 RegEx 从源代码中提取逗号分隔的单元
- android - mediaprojection : 在某些情况下黑屏
- php - 如何在 Laravel 中找到 itemset2 eclat?
- android - MediaRecoder 和 MediaPlayer 冲突
- java - 将 2 个哈希图添加到 Firestore 中的单个文档
- flutter - 将背景图片扩展至应用栏 Fluuter app
- excel - 即使我将大的 text.file 复制到其中,也将单元格宽度和高度设置为正常