Показывать текстовый файл по одной странице за один раз, подождать 20 секунд, затем автоматически настроить

Этот вопрос относится к AIX 7

Я работаю над монитором, который отобразит несколько страниц текста. Первоначально конечный пользователь хотел получить список прокрутки, для которого я создал это:

IFS=''; cat plfeed | while read line; do echo $line; perl -e 'select(undef,undef,undef,.8)'; done 

Конечный пользователь решил, что они предпочитают отображать страницу (24 строки) вывода в течение установленного времени (например, 20 секунд). Я знаю, что больше позволит мне отображать страницу за раз, но для этого требуется ввод с клавиатуры, что неприемлемо для моего прецедента.

tldr;

Как я могу автоматизировать команду «больше» или создать аналогичную функцию, которая будет спать между страницами и затем автоматически продвигаться?

Этот довольно стандартный awk должен быть в порядке на AIX

 awk '{if(NR>1 && NR%24==1)system("sleep 20");print}' 

Как упоминалось в комментариях, если вы хотите выйти из прерывания, вы можете заменить system() на

 {if(system("sleep 20"))exit} 

но он может не работать на вашей ОС.

 #!/usr/bin/env expect set timeout 20 spawn -noecho man autoexpect while 1 { expect { timeout { send " " } -ex "(END)" { exit } } }