У меня есть script как:
#!/bin/bash
exec /usr/bin/some_binary > /tmp/my.log 2>&1
Проблема в том, что some_binary
отправляет все свои записи в stdout, а буферизация делает это так, что я вижу только вывод в кусках нескольких строк. Это раздражает, когда что-то застревает, и мне нужно посмотреть, что говорит последняя строка.
Есть ли способ сделать stdout небуферированным до того, как я сделаю exec, который повлияет на some_binary, чтобы он имел более полезный журнал?
(Оболочка script устанавливает только несколько переменных среды перед exec, поэтому решение в perl или python также будет возможно.)