команда more в linux
Команда more Linux
В операционной систем Линукс для просмотра больших текстовых файлов используется команда more. В отличии от less, она позволяет читать файлы по одной странице.
Это очень полезная функция, так как часто бывает, что не удается прочитать очень большие текстовые документы и это касается не только Linux ну и Windows. Обычно это происходит с логами. К примеру копится годами какой-нибудь лог и занимает где-то 30 гигабайт. Возникла потребность открыть его и посмотреть, что происходит.
Стандартные утилиты не смогут этого сделать, а если им это удастся, вывод читать будет крайне неудобно, так как очень много текста. В этой ситуации можно воспользоваться утилитой more.
Синтаксис
Рассмотрим синтаксис команды.
После запуска утилиты, управление осуществляется горячими клавишами.
Основные горячие клавиши:
Примеры
Для первого примера запустим утилиты без параметров, а именно прочитаем лог «daemon.log», который состоит из двух страниц.
more daemon.log Итак, это была только первая страница. Перейдем на вторую, нажав клавишу «Пробел».
Утилита more позволяет читать несколько файлов. В этом случае нужно вводить имена документов по очереди, разделяя их пробелом. Вывод текста будет осуществляться в таком же порядке.
more auth.log daemon.log
Как видно из скриншота, первый лог оказался небольшим. Чтобы перейти во второй документ нажмем «Пробел».
Откроем документ, которые лежит в домашнем каталоге /home/ya/dokument.
Как видно из скриншота выше, в документе много пустых строк, чтобы убрать повторы, введем команду с опцией «-s».
Команда more в linux
Наши партнеры
Библиотека сайта rus-linux.net
ОПИСАНИЕ
Этот фильтр позволяет осуществлять проверку текста, выведенного на один полный экран. После каждого заполнения экрана команда делает паузу и выводит на нижней строке экрана сообщение типа: (дальше). Если при этом пользователь нажимает клавишу Enter, то на экран будет выведена следующая строка текста. Если пользователь нажимает клавишу SPACE (пробел), будет выведен следующий полный экран. Другие возможности описаны ниже.
Команда more просматривает файл /etc/termcap для определения характеристик терминала и для определения установленного по умолчанию размера окна. Для терминала, отображающего 24 строки, размер окна по умолчанию составляет 22 строки.
Если команда more считывается из файла, а не из программного канала, вслед за приглашением «—MORE—» высвечивается процентное соотношение. Оно показывает, какая часть данного файла (в символах, а не в строках) уже прочитана.
Команды начинают действовать немедленно. Нет необходимости нажимать клавишу возврата каретки. До того момента, когда задан сам командный символ, пользователь может ввести символ уничтожения строки для отмены сформированного численного аргумента. Кроме того, пользователь может ввести символ стирания для повторной высветки сообщения «—More—«.
Этой программой терминал устанавливается в режим noecho (неотображаемая передача), так что процесс вывода может быть непрерывным. За исключением команд (/) и (!), то, что вы вводите, не будет показано на терминале.
РАЗРЕШЕНИЕ НА ИСПОЛЬЗОВАНИЕ
Эта утилита была разработана в Университете г.Беркли, шт.Калифорния и используется по разрешению.
Перед отображением файла команда more пытается определить, является ли файл двоичным, не подлежащим распечатыванию, таким как каталог или выполняемое, двоичное отображение. Если команда more заключает, что файл не подлежит распечатыванию, она запрещает его печатать. Однако, команда more не может распознать все возможные виды непечатаемых файлов.
Просмотр содержимого файлов в командной строке Linux
Рассмотрим несколько команд, которые используются для просмотра содержимого текстовых файлов в командной строке Linux.
Команда cat
Команда cat выводит содержимое файла, который передается ей в качестве аргумента.
Это самый простой и наиболее часто используемый способ для вывода содержимого текстовых файлов. Но выводить большие файлы через cat не всегда удобно.
Команда nl
Команду nl удобно применять для просмотра программного кода или поиска строк в файлах конфигурации.
Команда less
Утилита less выводит содержимое файла, но отображает его только в рамках текущего окна в режиме просмотра.
Для просмотра списка доступных горячих клавиш нажмите h
Очень удобно, что после выхода окно терминала остается чистым и не содержит текст файла.
Команда more
Например, less в конце файла выводит сообщение (END) (или EOF — End Of File) и ожидает нажатия клавиши q чтобы закрыть режим просмотра, а more по достижении конца файла сразу возвращает управление в терминал.
Также more после своей работы оставляет текст файла в терминале, а less работает «чисто» и не сохраняет текст в терминале.
Команда head
Команда head выводит на экран только первые 10 строк файла.
Команда tail
Заключение
Команды, которые мы рассмотрели, имеют дополнительные возможности и области применения. Для получения справки по каждой команде можно воспользоваться Man-страницами.
Команда more в Linux
Утилита more предназначена для постраничного просмотра файлов в терминале Linux. Своим названием она обязана надписи more (в русскоязычном варианте — дальше), появляющейся внизу каждой страницы.
Команда more linux — одна из самых примитивных команд для работы с текстом. Её ближайшая родственница — команда less — обладает куда большим набором опций и дополнительных возможностей. Давайте разберемся с её синтаксисом и примерами использования.
Синтаксис и опции more
В эмуляторе терминала Linux команда записывается так:
$ more опции файл
Список опций команды:
Также у команды more есть собственные горячие клавиши и интерактивные команды:
Примеры использования more
Для того, чтобы просмотреть текст из файла, применяется команда:
Также в команде можно перечислить несколько имён файлов одно за другим, разделяя их пробелом. Содержимое этих файлов будет выведено в том же порядке. Пример:
more abc1.txt dfg2.txt
Если файл находится не в текущей директории, нужно указывать его полный адрес.
Впрочем, more умеет работать не только с текстовыми файлами — в неё можно перенаправлять вывод других команд (конвейеризация). Первой указывается основная команда, второй — more с требуемыми опциями. Команды обязательно разделяются вертикальной чертой. Пример:
Когда команда вывела часть текста и бездействует в ожидании дальнейших действий пользователя можно выполнять интерактивные команды. Они нужны для управления выводом.
Например, для того, чтобы узнать номер текущей строки, следует нажать клавишу =, а чтобы просмотреть файл в текстовом редакторе — клавишу v.
Следует заметить, что не все интерактивные команды могут быть выполнены, если в утилиту перенаправлен вывод другой команды. Открытие текстового редактора, как и переход на одну страницу назад (b или ^B) работает только при просмотре текстовых файлов.
Для того, чтобы получить список всех интерактивных команд, следует нажать клавишу h.
Выводы
Эта вполне подходит для выполнения наиболее тривиальных задач при просмотра текста. У неё простой синтаксис, мало опций и небольшое количество дополнительных возможностей для управления выводом, однако, иногда и этого набора более чем достаточно.
Команда more в Linux
Утилита more предназначена для постраничного просмотра файлов в терминале Linux. Своим названием она обязана надписи more (в русскоязычном варианте — дальше), появляющейся внизу каждой страницы.
Команда more linux — одна из самых примитивных команд для работы с текстом. Её ближайшая родственница — команда less — обладает куда большим набором опций и дополнительных возможностей. Давайте разберемся с её синтаксисом и примерами использования.
Синтаксис и опции more
В эмуляторе терминала Linux команда записывается так:
Список опций команды:
Также у команды more есть собственные горячие клавиши и интерактивные команды:
Примеры использования more
Для того, чтобы просмотреть текст из файла, применяется команда:
Также в команде можно перечислить несколько имён файлов одно за другим, разделяя их пробелом. Содержимое этих файлов будет выведено в том же порядке. Пример:
Если файл находится не в текущей директории, нужно указывать его полный адрес.
Впрочем, more умеет работать не только с текстовыми файлами — в неё можно перенаправлять вывод других команд (конвейеризация). Первой указывается основная команда, второй — more с требуемыми опциями. Команды обязательно разделяются вертикальной чертой. Пример:
Когда команда вывела часть текста и бездействует в ожидании дальнейших действий пользователя можно выполнять интерактивные команды. Они нужны для управления выводом.
Например, для того, чтобы узнать номер текущей строки, следует нажать клавишу =, а чтобы просмотреть файл в текстовом редакторе — клавишу v.
Следует заметить, что не все интерактивные команды могут быть выполнены, если в утилиту перенаправлен вывод другой команды. Открытие текстового редактора, как и переход на одну страницу назад (b или ^B) работает только при просмотре текстовых файлов.
Для того, чтобы получить список всех интерактивных команд, следует нажать клавишу h.