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