Я хочу передать вывод программы, которая не печатает новую строку, поскольку она использует возврат каретки для замены своей строки новым содержимым.
этот код представляет поведение программы, которую я хотел быдля получения выходных данных.
#!/usr/bin/env bash
for i in {1..100};do
echo -ne "[ $i% ] long unneeded log\r"
sleep 0.3
done
Я хотел бы, в сценарии bash, вырезать этот вывод в реальном времени, чтобы отображать только важную информацию, но, поскольку программа не печатает перевод новой строки, ./program | awk ...
показываетвывод только после завершения команды.
Я не могу изменить программу, которая выдает этот вывод, который я пытаюсь обрезать.(У меня нет его источника + я хочу поделиться своим собственным сценарием с другими пользователями)
Я знаю, что мой запрос довольно специфичен, но есть ли способ передать выводимый символ за символом вместо строки за строкой