Я использую Pexpect для получения данных от процесса, который всегда выполняется и генерирует непрерывные выходные данные.Я хочу читать последний вывод каждые 1 мин.Однако мне не удалось получить вывод в реальном времени с отметкой 1 мин, вместо этого я получаю старые данные (1 мин назад) в буфере.
Как мне отбросить предыдущие выходные данные в буфере и получить только текущий.
Я пытался использовать child.read_nonblocking (1000000000, timeout = 1) перед чтением данных, но этовсе еще дает мне старый вывод.
child = pexpect.spawn("tos-ssh")
child.expect("~ root#")
raw_output = child.before
print (raw_output)
#The process will continuiously printing out data
child.sendline("start polling data")
#Wait for 60 secs and Clear the input buffer
time.sleep(60)
child.read_nonblocking(1000000000, timeout = 10)
#Read the latest Data
child.expect("xy=")
raw_output = child.before
print (raw_output)
он все еще не дает мне текущий вывод.