Делайте больше с Less. Научитесь использовать команду Less в Linux для просмотра больших файлов и файлов журналов. Наиболее частое использование команды less объясняется в этой статье.
Есть способы читать текстовые файлы в командной строке Linux. Команда Cat — это, пожалуй, самая элементарная команда, которую почти каждый пользователь Linux знает в этом отношении. Но кошка не всегда является лучшим вариантом для отображения содержимого файла.
Представьте, что у вас есть текстовый файл с более чем тысячей строк. Использование команды cat просто заполнит весь экран терминала этими строками. Вы не cможете выполнять больше операций, таких как поиск определенного текста после того, как вы использовали команду cat.
Это — то, где команда Less поможет Вам.
С командой less вы можете читать большие текстовые файлы, не загромождая ваш экран терминала. Вы также можете искать текст и файлы мониторинга в режиме реального времени с ним.
Некоторые люди предпочитают использовать Vim для чтения больших текстовых файлов. Но less быстрее, чем Vim или другие такие текстовые редакторы, потому что он не читает весь файл перед запуском. Поскольку less ‘только для чтения’, у вас нет риска случайного редактирования файлов, которые вы просматриваете.
Синтаксис команды less чрезвычайно прост:
less filename
Есть множество вариантов с командой less, но лучше сосредоточиться на практических применениях, это будет более полезно для вас.
Давайте рассмотрим некоторые из наиболее полезных примеров команды less в Linux.
Давайте посмотрим, как использовать команду less в Linux с некоторыми практическими примерами.
Лучше работать с большим файлом, чтобы понять использование команды less. Вместо того, чтобы вручную создавать огромный текстовый файл, я бы посоветовал скопировать существующий файл из /etc/services в ваш домашний каталог или где бы вы ни занимались этими командами.
/etc/services — это большой файл с сотнями строк и один раз сделав копию, вы можете использовать его для своей практики.
Как показано в синтаксисе, вы можете использовать команду less для просмотра файла следующим образом:
less [option]<filename>
Результат будет примерно таким:
Если вы не привыкли к командам less, вы можете попытаться найти выход из les. Поверьте мне, это совсем не сложно. Просто нажмите «q» в любой точке, чтобы выйти из less.
Результат less делится на несколько страниц. Вы увидите только текст, который заполняется до экрана терминала.
Вы можете использовать клавиши со стрелками вверх и вниз для перемещения по строкам. Если вы хотите переместить страницу за страницей, используйте клавишу пробела, чтобы перейти на следующую страницу и клавишу «b», чтобы вернуться к предыдущей странице.
Если вы хотите перейти к началу файла, используйте ключ «g». Если вы хотите перейти в конец файла, нажмите клавишу «G».
Горячие клавиши:
Если вы хотите видеть номера строк в выводе команды less, вы можете использовать опцию N следующим образом:
less -N <filename>
Вы увидите такой вывод:
Если у вас большой текстовый файл, лучше искать конкретный фрагмент текста, а не читать его по строкам, чтобы найти его вручную.
Чтобы найти слово или фразу или шаблон регулярного выражения, нажмите / и введите все, что вы хотите найти.
/pattern
Как вы можете видеть, найденный текст подсвечивается.
Если есть несколько совпадений, вы можете перейти к следующему согласованному тексту, нажав клавишу «n». Вы можете вернуться к предыдущему совпадению с помощью клавиши «N».
«/Pattern» выполняет прямой поиск. Вы можете использовать ‘?Pattern’ для выполнения обратного поиска. Лично я предпочитаю делать прямой поиск, а затем нажимать n или N, чтобы перебирать все совпадения. Не нужно беспокоиться о поиске вперед или назад.
По умолчанию поиск в less случае зависит от регистра. Чтобы игнорировать случай, вы можете использовать less с опцией -I
less -I <filename>
Если вы забыли использовать эту опцию, не волнуйтесь. Вы также можете нажать комбинацию клавиш «-I», прежде чем выполнять поиск внутри less.
Пока вы прокручиваете большой текстовый файл, и вы находите что-то интересное, но вам также нужно продолжить проверку файла, как бы вы помнили этот интересный момент? Ответ — это маркировка.
less позволяет добавлять метки, типы флагов в любую строку. Вы можете добавить отметку, нажав клавишу «m», а затем букву.
ma
Когда вы захотите вернуться к этому знаку, просто нажмите ‘, за которым следует эта буква:
'a
Вы не ограничены одной меткой. Вы можете добавить несколько меток less. Просто используйте другую букву для каждой отмеченной позиции.
Вероятно, вы уже знаете, что вы можете использовать команду tail для мониторинга файлов журнала в реальном времени.
Вы также можете сделать то же самое с командой less. Вы можете видеть, что новые строки добавляются в файл в реальном времени с помощью опции + F.
less +F <filename>
Он отобразит последнюю страницу файла и дождитесь добавления новых данных. Обратите внимание, что вы не можете выполнять регулярное перемещение вверх и вниз, назад и вперед в этом режиме.
Чтобы выйти из режима реального времени, нажмите Ctrl + C. При этом вы вернетесь к нормальному виду команды less и можете нормально завершить работу с файлом.
Я буду честен с вами. Это не мой любимый пример с командой, но вы можете это сделать полностью.
Чтобы открыть несколько файлов с командой less, просто введите имена файлов один за другим:
less <filename1> <filename2> <filename3>
Вы увидите, что в нем указано имя файла вместе с его позицию в списке файлов.
Вы можете просмотреть другие файлы в списке, используя следующие ключи:
Команда less может использоваться при сопряжении с другими командами с использованием pipes. Это особенно полезно, когда вы знаете, что вывод определенной команды будет огромным.
Например, вывод команды dmesg обычно находится в тысячах строк. Если вы не хотите, чтобы он заполнял ваш экран, но вы также не сможете анализировать результат. Наберите его с командой less, и у вас будет более дружеский способ чтения вывода.
dmesg | less
Нет, вы не сможите этого сделать. Вы не можете редактировать файл командой less.
Одним из самых больших преимуществ команды less является то, что она предоставляет представление «только для чтения».
Если вы не можете редактировать текст с командой less, то почему я добавил это как пример с командой less? Потому что, когда вам кажется, что вам нужно отредактировать просматриваемый файл, просто нажмите клавишу «v» .
Он откроет файл в текстовом редакторе командной строки по умолчанию вашей системы Linux. Для системы на основе Ubuntu ее следует открыть в редакторе Nano.
Если у вас есть какие-либо вопросы или предложения, поделитесь им в разделе комментариев ниже.
Хорошая статья для новичков, по больше выкладывайте такие статьи с командами и как ими пользоваться.
Команды из less очень похожи на команды из Vim.
В частности в статье забыли упомянуть, что так же можно перемещаться вверх — кнопкой «k», а вниз — «j»
Есть ещё полезный фича -w, чтобы искать точное совпадение. Прям очень искал как это сделать. И про -A/B/Cчисло и -c ещё можно добавить. Тоже полезные вещи, если копаетесь в логах чего-либо.