Команда less
позволяет перематывать текст не только вперёд, но и назад, осуществлять поиск в обоих направлениях, переходить сразу в конец или в начало файла. Особенность less
заключается в том, что команда не считывает текст полностью, а загружает его небольшими фрагментами.
Запись команды less
в терминале выглядит так:
команда опции файл
Наиболее популярные опции:
-a
, --search-skip-screen
— не осуществлять поиск в тексте, который в данный момент отображен на экране;
-bn
, --buffers=n
— задать размер буфера памяти;
-c
, --clear-screen
— листать текст, полностью стирая содержимое экрана (построчная прокрутка работать не будет);
-Dxcolor
, --color=xcolor
— задать цвет отображаемого текста;
-E
, --QUIT-AT-EOF
— выйти, когда утилита достигнет конца файла;
-e
, --quit-at-eof
— выйти, когда утилита второй раз достигнет конца файла;
-F
, --quit-if-one-screen
— выйти, если содержимое файла помещается на одном экране;
-f
, --force
— открыть специальный файл;
-hn
, --max-back-scroll=n
— задать максимальное количество строк для прокрутки назад;
-yn
, --max-forw-scroll=n
— задать максимальное количество строк для прокрутки вперёд;
-i
, --ignore-case
— игнорировать регистр;
-I
, --IGNORE-CASE
— игнорировать регистр, даже если паттерн для поиска содержит заглавные буквы;
-jn
, --jump-target=n
— указать, в какой строке должна быть выведена искомая информация;
-J
, --status-column
— пометить строки, соответствующие результатам поиска;
-n
, --line-numbers
— не выводить номера строк;
-N
, --LINE-NUMBERS
— вывести номера строк;
-s
, --squeeze-blank-lines
— заменить множество идущих подряд пустых строк одной пустой строкой;
-w
, --hilite-unread
— выделить первую строку нового фрагмента текста.
Во время просмотра текста утилитой можно управлять при помощи внутренних команд, набирая их на клавиатуре компьютера. Наиболее часто используемые из них:
h
, H
— справка;
Space
, Ctrl+V
, f
, Ctrl+F
— прокрутить текст на один экран вперёд;
Enter
, Return
, Ctrl+N
, e
, Ctrl+E
, j
, Ctrl+J
— прокрутить текст на n строк вперед, по умолчанию n=1;
y
, Ctrl+Y
, Ctrl+P
, k
, Ctrl+K
— прокрутить текст на n строк назад, по умолчанию n=1;
Ctrl+→
— прокрутить текст по горизонтали в конец строки;
Ctrl+←
— прокрутить текст по горизонтали в начало строки;
:d
— удалить текущий файл из списка файлов;
Ctrl+G
, :f
— вывести основную информацию о файле;
q
, Q
, :q
, :Q
, ZZ
— выход.
Перечень всех опций и внутренних команд можно просмотреть в терминале, выполнив команду
$ man less
Использование опций не является обязательным. Открыть файл можно, выполнив следующую команду:
$ less filename.txt
Командная строка исчезнет, а в окне терминала откроется указанный вами документ. После этого его можно читать, пользуясь для прокручивания строк вперед и назад клавишами Enter и y либо другими.
Внизу окна вы увидите поле с мигающим курсором. Здесь можно напечатать какую-либо внутреннюю команду, например, задать утилите паттерн поиска.
Опции необходимы для отображения текста и сделать работу с утилитой более удобной. К примеру, в текстах часто встречаются множественные пустые строки. Они «съедают» место на экране, не принося никакой пользы. Поэтому к команде less
стоит всегда добавлять опцию -s
или --squeeze-blank-lines
— она удаляет лишние пустые строки.
$ less -s textfile.txt
Сравните как выглядит один и тот же текст с использованием опции -s
(слева) и без неё (справа).
Утилиту less
зачастую используют не для чтения текста, а для поиска определенных участков в больших документах. Если вам нужно найти то или иное слово, напечатайте в поле с мигающим курсором /текст (для поиска вниз по тексту) или ?текст (чтобы выполнить поиск less
вверх по тексту) и нажмите Enter. При необходимости используйте стандартные паттерны. Все участки текста, которые соответствуют заданным условиям поиска, будут подсвечены контрастным цветом.
Если интересует как выйти из less
, то для выхода из утилиты и возвращения к командной строке терминала нажмите q
, ZZ
или выполните другую команду, сигнализирующую о завершении работы. Следует заметить, что утилита less
предназначена только для просмотра документов.
Она не позволяет вносить в текст правки, форматировать или пере-сохранять его. Команда less
в Linux пригодится для просмотра больших текстовых файлов, с которыми затруднительно работать в текстовых редакторах.