【发布时间】:2019-04-25 14:40:11
【问题描述】:
假设我在 01.23.456.789 有一个服务器并运行以下命令:
ssh 01.23.456.789 "python3 -c 'import time; print(1); time.sleep(10); print(2);'"
它在10 秒后同时打印1 和2。有什么方法可以立即获得单独的输出,所以我会打印1,等待10 秒,然后打印2?
【问题讨论】:
假设我在 01.23.456.789 有一个服务器并运行以下命令:
ssh 01.23.456.789 "python3 -c 'import time; print(1); time.sleep(10); print(2);'"
它在10 秒后同时打印1 和2。有什么方法可以立即获得单独的输出,所以我会打印1,等待10 秒,然后打印2?
【问题讨论】:
Python 缓冲它的输出。您必须以某种方式从 python 内部或使用stdbuf -oL 从外部刷新缓冲区。您还可以使用python3 -u 自动刷新print。
ssh 01.23.456.789 "python3 -uc 'import time; print(1); time.sleep(10); print(2);'"
【讨论】: