Для удобного просмотра текста из файла или со стандартного вывода программы используются программы постраничного пролистывания – "пэйджеры".
Простейшая программа для постраничного просмотра текста more используется с именем файла(ов) в качестве параметра или как последняя команда в цепочке перенаправлений ввода/вывода. С помощью опций +<число> или +/<образец текста> можно начать просмотр с интересующей строки.
# Просмотр файла file1 с 20-ой строки
more +20 file1
# Поиск в выводе программы grep подстроки 13:00 и просмотр вывода, начиная с этого места
grep ntpd /var/log/messages | more +/13:00
more умеет листать текст вперёд. Текст из файла, в принципе, можно пролистать назад, но это нетипичное использование more.
Основные интерактивные команды more похожи на команды редактора vi:
h – helpq – выходSPACE – пролистать один экранd – пролистать пол экранаRETURN – пролистать одну строку/pattern – пролистать до строки содержащей подстроку patternn – повторить поиск подстроки= – показать номер текущей строки:n – перейти к следующему файлу:p – вернуться к предыдущему файлу:f – напечатать имя текущего файла и номер строки в нем! – запуск shell-командыТолько при просмотре файлов:
b – пролистать экран назадv – вызвать текстовый редактор, установив курсор на текущую строкуless – существенно более развитая команда для пролистывания текста. При чтении данных со стандартного ввода она создает буфер, который позволяет листать текст как вперед, так и назад, а также искать как по направлению к концу, так и по направлению к началу текста. Заполнение буфера идет блоками по 64KB, поэтому (если текст на стандартный ввод подается медленно) возможна ситуация "подвисания", когда less показывает очередные поступившие строки, но не позволяет выполнить какую-либо команду.
less понимает все команды more плюс свои.
h – вызов справкиq – выходSPACE – на экран вперёдb – пролистать экран назадk и j или стрелки вверх и вниз – вертикальная прокрутка по строкеg – перейти на 1-ую строку<N>g – перейти на строку NG – перейти на последнюю строкуF – перейти на последнюю строку файла и ожидать записи новых строк (аналог tail -f, не работает со стандартным вводом)/pattern – поиск по шаблону вперёд?pattern – поиск по шаблону назадn – следующее совпадениеN – предыдущее совпадениеmбуква – отметить позицию буквой'буква (апостоф и буква) – перейти на отмеченную позицию! – запуск shell-команды (% – имя текущего файла, к примеру: ! cat % > /tmp/foobar.txt)Только для файла
v – запуск редактораТолько для стандартного ввода
s filename – сохранить выводимый текст в файл filenameПараметры вывода текста less можно указывать как в виде опций, так и в интерактивном режиме. Повторный ввод опции в интерактивном режиме отменяет действие.
-g – при поиске подсвечивать только текущее найденное слово (по умолчанию подсвечиваются все вхождения)-N – показывать номера строк