У меня есть прога python, которую я хочу вести себя как linux cmd при выводе. Прога использует print (), и при запуске в строке cmd напечатанный материал хорошо виден на терминале. Когда я запускаю прогу с перенаправлением вывода bash в файл, файл остается пустым. В чем ошибка я делаю?
Печатная часть прог:
chktime = 0
chkper = 10
while True:
if time.time() - chktime > chkper:
chktime = time.time()
diskusepct = get_asus_diskusepct()
print('Asus tmpfs free: ' + diskusepct)
if float(diskusepct) > 95.0:
with open("asus_syslog.log", 'w') as sl:
sl.write(get_asus_syslog())
else:
print('Wait')
time.sleep(1)
Из строки cmd (как и ожидалось):
rpi4b:~/python $ ./asus_diskwatch_v1.0.py
Asus tmpfs free: 1
Wait
Wait
Wait
Wait
С перенаправлением (неожиданно):
~/python $ ./asus_diskwatch_v1.0.py > asus_diskwatch.log &
[2] 4415
~/python $ cat asus_diskwatch.log
<nothing>
Обратная связь приветствуется.