Команда cat — смотрим внутрь!

Представим себе, что у нас в распоряжении есть только терминал, а нам нужно посмотреть содержание текстового файла. Как поступить?

Тут нам поможет команда cat. Команда cat выводит на экран содержимое файла. Для ее применения введите следующую строку:

Сама по себе команда more очень полезна для вывода текстовых файлов, у которых строк больше, чем может отображаться в окне программы Терминал. Конечно, если вам нужно прочитать только одну строчку, например фразу, то тут всё просто.

команда cat

Но если в файле больше строк, чем может вместить окно, текст будет прокручиваться, и тут пригодится команда more. Для ее применения введите имя команды, за которым следует имя просматриваемого файла:

Как видите, это гораздо легче, чем загрузка файла в текстовый редактор только для того, чтобы просто просмотреть его. Вы можете прокручивать файл построчно, нажимая клавишу , или постранично, нажимая клавишу пробела. Для завершения команды нажмите клавишу .

Команда more гораздо мощнее, чем вы можете подумать. Мощь ее кроется в способности Ubuntu использовать каналы (или конвейеры) — инструмент, с помощью которого вывод одной программы передается на вход другой. Но more — это настолько полезное средство, что заслуживает короткого упоминания в другой раз.

Например, в предыдущеq заметке, посвященном команде find, я обещал, что мы посмотрим, как комбинировать ее с командой more для постраничного вывода результатов. Вот как вы должны сделать это:

В конец команды я добавил символ | (канал), за которым следует вызов программы more. Как вы узнаете позже, символ | передает вывод команды, который должен выводиться на экран, для обработки в программу more.

В результате весь вывод (за исключением любых сообщений об ошибках) запоминается и, когда команда find завершается, программа more принимает управление на себя, отображая сохраненный вывод постранично. Первая страница, отображаемая more.

Таким образом, команду more можно добавлять почти ко всем остальным командам Bash, вывод которых больше, чем может вместить окно программы Терминал.

Странный побочный эффект от применения канала улучшает отображение вывода из команды more: все сообщения об ошибках Отказано в доступе (Permission denied), полученные от команды find, выводятся перед тем, как запустится команда more, таким образом вы получаете только полезный вывод от начала до конца. Есть и другие способы полного скрытия всех сообщений об ошибках, но это уже совсем другая история…

Все команды linux на одном листе можно найти на этой странице.

Оцените статью
Просто Линукс
Добавить комментарий