Я бы хотел, чтобы вывод больших команд замедлился, например, показ слайдов, например, с автоматической задержкой 500 мс между каждой прокруткой. Какой самый простой способ добиться этого?
Я бы хотел, чтобы вывод больших команд замедлился, например, показ слайдов, например, с автоматической задержкой 500 мс между каждой прокруткой. Какой самый простой способ добиться этого?
Ответы:
Простое решение с использованием bash:
function scroll
{
while read -r ; do echo "$REPLY" ; sleep ${1:-0.5} ; done
}
long_command | scroll [delay]
delayне является обязательным и по умолчанию 0.5.
Выход с Ctrl+C
Если вы можете жить с разрешением 1с, вы могли бы сделать tail -n +0 -f -s <seconds>.
long_commandвозможно, генерируются менее чем за секунду, поэтому нет смысла опрашивать их полноту, <interval>и они действительно не работают для меня.
echo /**имейте в виду, что в вашем выводе long_command (например,catв файле) застрянет и запустит сеанс терминала, если вы не поставите двойные кавычки"$REPLY".