С чего начать Первые шаги трек · 15 ступеней
Linux Labs

less — листать длинный файл с поиском

4 мин Ubuntu 24.04 · less 590

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

Шпаргалка

6 команд Версия для печати
  • less /var/log/syslog открыть файл; q — выход
  • less -N app.conf с номерами строк
  • less -S access.log длинные строки не переносить
  • less +G app.log открыть сразу в конце
  • less +F app.log следить за концом, как tail -f
  • ps aux | less листать вывод команды
  • внутри: Пробел/b — экран вперёд/назад, g/G — начало/конец,
  • /слово — поиск, n/N — следующее/предыдущее, q — выход

Обзор

less — пейджер: программа, которая показывает текст экран за экраном и ждёт клавиш. В отличие от cat, она не выводит всё сразу, а в отличие от редактора — ничего не меняет в файле.

Внизу экрана стоит строка состояния: имя файла, двоеточие или (END) в конце. Команды набирают прямо в окне, без Enter, кроме поиска:

Клавиша Что делает
Пробел, f / b экран вперёд / назад
↓ ↑, j / k строка вперёд / назад
g / G в начало / в конец
/слово Enter искать вперёд
?слово Enter искать назад
n / N следующее / предыдущее совпадение
&слово Enter показать только строки со словом
F ждать новых строк, Ctrl+C — перестать
h справка по клавишам
q выйти

less открывают и другие команды: man, journalctl, systemctl status показывают длинный вывод именно через неё. Те же клавиши работают и там.

Ключи

7

Ключи запуска можно переключать и изнутри: набери -N в открытом less, и номера строк появятся. Полный список — man less.

Ключ Что делает Пример
-N Показывать номера строк. less -N app.conf
-S Не переносить длинные строки — листать вбок стрелками. less -S access.log
-i Искать без учёта регистра, если в образце нет заглавных букв. less -i app.log
-R Показывать цвета вместо кодов ESC[...m. grep --color=always err app.log | less -R
+F Открыть в режиме слежения за концом файла, как tail -f. less +F app.log
+G Открыть сразу на последней строке. less +G app.log
-F Сразу выйти, если текст помещается на один экран. less -F short.txt

Ничего не найдено. Попробуй запрос короче.

Рецепты

5

Найти ошибку в длинном журнале

bash
less /var/log/syslog
# внутри: G — в конец, ?error Enter — ближайшая ошибка выше,
# n — следующая выше, N — обратно вниз

Поиск учитывает регистр. Без регистра — запуск с -i или -i внутри less.

Оставить в окне только нужные строки

Внутри less набери &Failed и Enter: останутся строки со словом Failed. & и Enter без слова вернут весь текст.

Таблица с длинными строками

bash
less -S /var/log/nginx/access.log   # строки обрезаны, → ← листают вбок

Цветной вывод

bash
grep --color=always error app.log | less -R   # -R сохраняет цвета

Открыть в редакторе то, что читаешь

Клавиша v открывает текущий файл в редакторе по умолчанию — в Ubuntu обычно это nano. После выхода из редактора вернёшься в less.

Неполадки

5

Как выйти из less

q. Если внизу набирается текст (началась команда или поиск), сначала Esc или Ctrl+C, потом q. Из режима F выходят Ctrl+C, затем q.

Pattern not found

Слова нет ниже текущей позиции. / ищет вперёд от экрана: перейди в начало (g) и повтори поиск, или ищи назад через ?. Проверь регистр.

"file" may be a binary file. See it anyway?

Файл двоичный, и читать его как текст бессмысленно. Ответь n. Что это за файл, покажет file имя — см. file.

Вместо цветов — ESC[31m и похожий мусор

Программа выдала коды цвета, а less показывает их буквами. Запусти less -R.

Missing filename

less запустили без имени файла и без конвейера. Укажи файл (less app.log) или подай вывод: команда | less.

См. также

  • cat — короткий файл целиком, без листания.
  • head — только начало.
  • tail — только конец и tail -f.
  • grep — найти строки, не листая файл.
  • man-help — справка man открывается в том же less.
  • journalctl — журнал systemd, тоже через less.
Загрузка…