Терминал Linux. Команды просмотра текстовых файлов
- Информация о материале
- Категория: Linux
- Опубликовано: 17.01.2018, 13:08
- Автор: HelpDesk
- Просмотров: 1652
Для того, чтобы просмотреть огромный текстовый файл применяются команды для постраничного просмотра. Такие как more и less.
Команда more.
В общем виде команда more выглядит следующим образом:
more
Откроем для просмотра текстовый файл:
Теперь можно управлять просмотром текста с помощью нажатия следующих кнопок на клавиатуре:
SPACE Переместиться на одну страницу вниз
ENTER Переместиться на одну строку вниз
d Переместиться на полстраницы вниз
b Переместиться на одну страницу вверх
h Помощь
q Выход
У команды more есть и опции.
Если мы хотим читать текст по определенному количеству строк, то указываем - (тире/минус) и количество строк:
Если хотим начать чтение с определенной строки, то указываем + (плюс) и номер строки, с которой нужно начать чтение:
У команды more очень много недостатков. Нельзя читать текст вверх, только вниз. Текст остается в терминале после просмотра. Поэтому и была разработана less.
Команда less.
Просто совет, забыть, что есть такая команда, как more и использовать less.
В общем виде команда less выглядит следующим образом:
Откроем текстовый файл для просмотра:
Сразу стоит упомянуть, что less умеет всё тоже, что и more. Поэтому не буду повторяться с опциями, которые позволяют начать чтения с определенной строки и количество строк на страницу.
Кнопки для управления просмотра текста:
стрелка_вверх Переместиться на одну строку вверх
стрелка_вниз Переместиться на одну строку вниз
PageUp Переместиться на одну страницу вверх
PageDown Переместиться на одну страницу вниз
SPACE Переместиться на одну страницу вниз
ENTER Переместиться на одну строку вниз
d Переместиться на полстраницы вниз
b Переместиться на одну страницу вверх
h Помощь
q Выход
Удобно искать слова в тексте.
Поиск текста вниз.
Просто набираем слеш / и вводим любой текст для поиска. Клавиша n – переход к следующему найденному тексту. Клавиша N – переход к предыдущему найденному тексту.
Обратный поиск.
Просто набираем ? (знак вопроса) и вводим любой текст для поиска. Клавиша n – переход к следующему найденному тексту. Клавиша N – переход к предыдущему найденному тексту.
Для перехода в начало документа используется клавиша g, для перехода в конец документа - G. Кроме того, мы можем перейти на определенную строку введя число и g, к примеру, 50g переведет нас на 50 строку.
Для того, чтобы открыть в редакторе просматриваемый файл, то нужно нажать клавишу v.
Для того, чтобы отобразить номера строк в файле, можно указать опцию -N или ввести её прямо во время просмотра:
Кроме того, команды less и more можно использовать для просмотра стандартных потоков вывода (подробнее о них в 3-ей статье). Для этого нужно указать в конце команды: | less или | more. К примеру, хотим просмотреть список установленных приложений постранично:
При просмотре стандартного потока вывода, как в команде выше, если нажать s, то можно сохранить этот просматриваемый поток вывода в файл.
Ну и последнее, что хочется упомянуть, что если нажать F, то курсор будет переведён в конец файла и будет ожидание добавление новых строк (аналогично команде tail -f).
Команды head и tail.
Как не трудно догадаться по названиям (легко запомнить), то команда head отображает "голову" текстового файла, а tail - его "хвост". Они очень простые в использовании, давайте рассмотрим их более подробнее.
Команда head.
Выполнение команды head выведет первые 10 строк текстового файла, в общем виде выглядит следующим образом:
Давайте выведем первые 10 строк:
Если мы хотим вывести определенное количество строк (вместо 10 по умолчанию) с начала текстового файла, то укажем опцию - (тире/минус) и количество строк:
Команда tail.
Если команду head мне не приходилось использовать никогда, то команда tail очень нужная и очень часто используется.
Выполнение команды tail выведет последние 10 строк файла, в общем виде выглядит следующим образом:
Давайте выведем последние 10 строк:
Если хотим вывести определение количество строк с конца текстового документа, то нужно указать опцию (как и в случае с heaf) - (тире/минус) и количество строк:
Либо -n и количество строк. Если указывать другие опции, помимо количества строк, то нужно использовать именно эту конструкцию:
Данная команда tail очень полезна, если нужно смотреть текстовый файл, в частности файл лога, в который добавляются новый строки. То есть, смотреть изменение файла в реальном времени. Например, работает у вас какое-то серверное приложение и вам надо отслеживать ошибки лога. В этом случае, нужно к команде tail добавить опцию -f:
Команда не завершается и если в этот текстовый файл добавятся другие строки, то мы увидим их.
C опцией -f можно указать количество строк -n:
Очень часто использую её для просмотра логов в режиме реального времени.
Команды cat и tac.
Команда cat используется для просмотра текстового файла полностью. В основном, для просмотра небольших текстовых файлов, например, каких-либо конфигурационных файлов.
В общем виде выглядит следующим образом:
Например:
Чтобы отобразить номера строк, нужно использовать опцию -n:
С помощью перенаправления стандартного потока вывода мы можем делать интересные вещи.
К примеру, можно создать копию текущего файла:
Можно добавить текст из одного файла в другой:
Можно объединить несколько файлов в один:
Как упоминалось выше, |less и |more можно использовать для просмотра стандартных потоков вывода. Команда cat не исключение:
Команда tac - это тоже самое, что и cat, только отображает строки в обратном порядке.
Для лучшего понимания, о чём идёт речь, просто посмотрите на следующий скриншот:
43 43
Вот и всё.