Введение
В этом руководстве вы научитесь использовать команду less в Linux для эффективной навигации и анализа больших лог-файлов. Команда less — это мощный инструмент для просмотра текстовых файлов в терминале, который позволяет прокручивать содержимое, искать конкретную информацию и просматривать файлы постранично.
Представьте, что вы системный администратор, которому поручено расследовать серию серверных ошибок. У вас есть доступ к огромному лог-файлу с информацией о системных событиях, но файл слишком велик, чтобы открывать его в обычном текстовом редакторе. Именно здесь команда less становится незаменимой.
Доступ к лог-файлу
Для начала перейдем в директорию, содержащую наш лог-файл, и ознакомимся с его содержимым.
Откройте терминал. По умолчанию вы должны находиться в директории
/home/labex/project.Выведите список файлов в текущей директории:
ls
Вы должны увидеть файл с именем server_log.txt.
- Чтобы просмотреть содержимое этого файла с помощью команды
less, введите:
less server_log.txt
Эта команда открывает файл server_log.txt во встроенном просмотрщике less. Теперь вы можете изучать содержимое файла.
Примечание: Содержимое, которое вы увидите, может отличаться от примера ниже, так как лог-файл генерируется динамически.
2023-11-05 08:00:01 INFO: Server startup complete
2023-11-05 08:15:23 WARNING: High CPU usage detected
2023-11-05 08:30:45 ERROR: Database connection failed
2023-11-05 08:31:02 INFO: Retrying database connection
2023-11-05 08:31:05 INFO: Database connection established
...
Чтобы выйти из режима просмотра less, нажмите клавишу q.
Навигация по файлу
Теперь, когда мы открыли файл, давайте научимся перемещаться по нему.
- Снова откройте лог-файл с помощью
less:
less server_log.txt
- Используйте следующие клавиши для навигации:
- Нажмите
Space(Пробел) илиPage Downдля перехода на одну страницу вперед. - Нажмите
bилиPage Upдля перехода на одну страницу назад. - Используйте клавиши со стрелками
Up(Вверх) иDown(Вниз) для построчного перемещения. - Нажмите
G(Shift + g), чтобы перейти в самый конец файла. - Нажмите
g, чтобы вернуться в начало файла.
- Нажмите
Попробуйте эти команды навигации, чтобы привыкнуть к перемещению по тексту.
- Когда закончите изучение, нажмите
q, чтобы выйти изless.
Поиск конкретного содержимого
Системным администраторам часто требуется быстро находить определенную информацию. Команда less предоставляет мощные возможности поиска.
- Снова откройте лог-файл:
less server_log.txt
- Чтобы найти слово "ERROR", введите
/ERRORи нажмите Enter. Это подсветит все вхождения слова "ERROR" в файле. - Нажимайте
n, чтобы перейти к следующему найденному совпадению "ERROR", илиN, чтобы вернуться к предыдущему. - Теперь попробуем найти конкретную дату. Сначала перейдите в начало файла, нажав
g, затем посмотрите на формат дат в записях лога. Выберите дату, которая присутствует в файле (например, если вы видите "2025-01-15", ищите её). Введите/, затем нужную дату (например,/2025-01-15) и нажмите Enter. - Используйте
nиNдля перемещения между совпадениями этой даты. - По завершении поиска нажмите
q, чтобы выйти изless.
Отображение номеров строк
При анализе логов бывает полезно видеть номера строк для удобства ссылок.
- Откройте лог-файл с включенным отображением номеров строк:
less -N server_log.txt
Опция -N указывает less выводить номера строк слева.
- Теперь вы должны увидеть нумерацию в левой части экрана:
1 2023-11-05 08:00:01 INFO: Server startup complete
2 2023-11-05 08:15:23 WARNING: High CPU usage detected
3 2023-11-05 08:30:45 ERROR: Database connection failed
4 2023-11-05 08:31:02 INFO: Retrying database connection
5 2023-11-05 08:31:05 INFO: Database connection established
...
Поперемещайтесь по файлу, как и раньше. Обратите внимание, как номера строк помогают ориентироваться в текущей позиции.
Когда закончите, нажмите
q, чтобы выйти изless.
Переход к конкретному шаблону при открытии
Иногда требуется начать просмотр файла сразу с определенного места. Команда less позволяет сделать это мгновенно.
- Допустим, вы хотите начать просмотр файла с первого упоминания ошибки базы данных. Используйте следующую команду:
less +/ERROR:.Database server_log.txt
Эта команда приказывает less открыть файл и сразу перейти к первой строке, содержащей "ERROR:", за которым следует любой символ, а затем слово "Database".
- Теперь файл должен открыться сразу на первой ошибке базы данных:
2023-11-05 08:30:45 ERROR: Database connection failed
2023-11-05 08:31:02 INFO: Retrying database connection
2023-11-05 08:31:05 INFO: Database connection established
...
Вы можете продолжить навигацию по файлу с этой точки в обычном режиме.
Когда закончите, нажмите
q, чтобы выйти изless.
Резюме
В этом руководстве вы научились использовать команду less для эффективной навигации и анализа больших лог-файлов. Вы попрактиковались в открытии файлов, прокрутке содержимого, поиске информации, отображении номеров строк и переходе к конкретным шаблонам при запуске.
Эти навыки критически важны для системных администраторов и разработчиков, которым часто приходится быстро анализировать объемные логи для устранения неполадок или мониторинга производительности системы.
Другие полезные параметры less, не затронутые в этом уроке:
-i: Игнорировать регистр при поиске.-F: Автоматически выходить, если содержимое файла помещается на одном экране.-S: Обрезать длинные строки вместо их переноса на новую строку.+F: Режим "живого" чтения файла, отображающий новые строки по мере их появления (аналогичноtail -f).



