Для удобного просмотра текста из файла или со стандартного вывода программы используются программы постраничного пролистывания – "пэйджеры".
Простейшая программа для постраничного просмотра текста 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
– пролистать до строки содержащей подстроку pattern
n
– повторить поиск подстроки=
– показать номер текущей строки: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
– показывать номера строк