Таймер перенаправления потока - PullRequest
1 голос
/ 27 июля 2011

Как я могу сделать «временное перенаправление»? У меня есть программа, которая принимает пользовательский ввод от stdin, который пользователь может вводить с разной скоростью. Но теперь я хочу, чтобы вход считывался из файла с определенной скоростью. Я попытался написать скрипт Python, который делает паузу после каждого readline() и направляет ввод, но этот процесс завершается первым, прежде чем вывод отправляется второй программе:

python slowrelease.py my_input_data.txt 10 | some_program

(«10» означает, что я хочу, чтобы содержимое my_input_data.txt передавалось в течение 10 секунд.)

Я работаю над командной строкой Windows, но было бы интересно узнать, возможно ли это и в Unix.

1 Ответ

0 голосов
/ 28 июля 2011

Я забыл очистить строки, которые писал для stdout.Это означало, что скрипт Python просто буферизировал весь вывод и затем записывал все сразу, когда закончил.Сброс после каждой строки дал мне желаемый «медленный выпуск» содержимого файла.: -)

...