что делает команда cat
Команда cat в Linux
Команда cat считается наиболее востребованной при работе в операционных системах Linux. И все из-за того, что она, в зависимости от используемых опций, позволяет просматривать содержимое файлов, склеивать их и т.д. Поэтому освоение UNIX-совместимых платформ часто начинают с нее и подобных команд.
Назначение и синтаксис команды cat
Наименование команды произошло за счет сокращения слова «concatenate» («конкатенация, сцепка»). Команда позволяет создавать и объединять содержимое файлов, а также считать данные в указанном файле и отображать их на экране монитора. Правда, есть ряд операторов и опций, которые расширяют функционал, например, перенаправляют вывод или отображают то, что вводится на клавиатуре в текущий момент.
Общий синтаксис ввода команды выглядит так:
Передавать утилите можно неограниченное количество файлов. Их содержимое будет выводиться на мониторе последовательно, без каких-либо разделителей. Если нужно изменить метод вывода, понадобится ввести опции.
Основной их перечень:
Вот такой краткий перечень опций прилагается к приложению cat. Его достаточно для выполнения операций, задуманных разработчиком.
Примеры использования команды cat
Простейший вариант ввода команды, когда она просто отображает содержимое указанного файла:
Если нужно передать системе несколько файлов, достаточно перечислить их в параметрах:
Большинство команд, используемых в Linux, поддерживают стандартный поток ввода данных при помощи символа «-». В случае с cat это будет выглядеть так:
Теперь опробуем одну из ранее приведенных опций. Например, нумерацию непустых строк:
Или всех строк, имеющихся в файле:
Если попутно требуется удалить повторяющиеся пустые строки, команда будет выглядеть так:
При отсутствии параметров и опций команда будет отображать данные из стандартного ввода:
Чтобы записать данные из нескольких файлов в один, команда будет выглядеть так:
Основное назначение команды cat – считывание данных из файлов, поэтому можно смело экспериментировать с комбинацией опций и параметров. При объединении файлов рекомендуется указывать уникальное имя создаваемого файла, дабы исключить риски перезаписи важной информации.
📑 Команда cat и примеры её использования в Linux
Общий синтаксис команды Cat
1. Отобразить содержимое файла
В приведенном ниже примере будет выведено на терминал содержимое файла /etc/passwd.
2. Просмотр содержимого нескольких файлов в терминале
В приведенном ниже примере он отобразит содержимое файла test и test1 в терминале.
3. Создание файла с помощью команды Cat
Создание пустого файла под названием файл test2 с помощью приведенной ниже команды.
После этого система ожидает ввода от пользователя. Введите нужный текст и нажмите CTRL+D, чтобы выйти. Текст будет записан в файл test2. Вы можете просмотреть содержимое файла с помощью следующей команды cat.
4. Использование команды Cat с опциями more и less
Если файл с большим количеством содержимого не помещается на один экран и прокручивается очень быстро, мы можем использовать параметры more и less с помощью команды cat, как показано ниже.
5. Отображение номеров строк в файле с помощью cat
7. Отображение нескольких файлов одновременно
В приведенном ниже примере у нас есть три файла test, test1 и test2, и мы можем просматривать содержимое этих файлов в порядке следования имен файлов.
В качестве разделителя имен файлов нужно использовать «;» (точка с запятой).
8. Перенаправление стандартного вывода оператора cat.
Мы можем перенаправить стандартный вывод файла в новый файл или существующий файл с символом «>» (больше). Осторожно, существующее содержимое test1 будет перезаписано содержимым файла test.
9. Добавление содержимого файла в существующий файл
Добавляется в существующий файл с помощью символа «>>» (двойное больше). Здесь содержимое тестового файла будет добавлено в конец файла test1.
10. Перенаправление нескольких файлов в один файл
Это создаст файл с именем test3, и весь вывод будет перенаправлен во вновь созданный файл.
11. Сортировка содержимого нескольких файлов в одном файле
Это создаст файл test4, и вывод команды cat будет передан для сортировки, а результат будет перенаправлен во вновь созданный файл.
Команда cat Linux
Несмотря на то что утилита очень проста и решает только одну задачу в лучшем стиле Unix, она будет очень полезной. А знать о ее дополнительных возможностях вам точно не помешает. В этой статье будет рассмотрена команда cat linux, ее синтаксис, опции и возможности.
Команда cat
Вы можете передать утилите несколько файлов и тогда их содержимое будет выведено поочередно, без разделителей. Опции позволяют очень сильно видоизменить вывод и сделать именно то, что вам нужно. Рассмотрим основные опции:
Это было все описание linux cat, которое вам следует знать, далее рассмотрим примеры cat linux.
Использование cat в Linux
Команда просто выведет все, что есть в файле. Чтобы вывести несколько файлов достаточно просто передать их в параметрах:
Как вы знаете, в большинстве команд Linux стандартный поток ввода можно обозначить с помощью символа «-«. Поэтому мы можем комбинировать вывод текста из файла, а также стандартного ввода:
Теперь перейдем к примерам с использованием ранее рассмотренных опций, чтобы нумеровать только непустые строки используйте:
Также вы можете нумеровать все строки в файле:
Если вы не передадите никакого файла в параметрах утилите, то она будет пытаться читать данные из стандартного ввода:
cat > file2
$ cat file2
Возможность объединения нескольких файлов не была бы настолько полезна, если бы нельзя было записать все в один:
cat file1 file2 > file3
$ cat file3
Вот, собственно, и все возможности команды cat, которые могут быть полезны для вас.
Выводы
В этой статье мы рассмотрели что представляет из себя команда cat linux и как ею пользоваться. Надеюсь, эта информация была полезной для вас. Если у вас остались вопросы, спрашивайте в комментариях!
Команда Cat в Linux
Cat Command in Linux
В этом руководстве мы покажем вам, как использовать команду cat на практических примерах.
Cat чаще всего используется для отображения содержимого одного или нескольких текстовых файлов, объединения файлов путем добавления содержимого одного файла в конец другого файла и создания новых файлов.
Синтаксис команды Cat
Прежде чем перейти к использованию команды cat, давайте начнем с обзора основного синтаксиса.
Выражения утилиты cat имеют следующую форму:
Отображение содержимого файла
Например, следующая команда отобразит содержимое /etc/issue файла в терминале:
Перенаправить содержимое файла
Вместо отображения вывода на стандартный вывод (на экране) вы можете перенаправить его в файл.
Следующая команда будет копировать содержимое file1.txt с file2.txt помощью ( > оператора):
Если file2.txt файл не существует, команда создаст его. В противном случае файл будет перезаписан.
То же, что и раньше, если файл отсутствует, он будет создан.
Печатать номера строк
Подавить повторяющиеся пустые строки
Отображать символы табуляции
-T Опция позволяет визуально различать вкладки и пробелы.
Показать конец строк
Объединение файлов
При передаче двух или более имен файлов в качестве аргументов cat команде содержимое файлов будет объединено. cat читает файлы в последовательности, указанной в аргументах, и отображает содержимое файла в той же последовательности.
Например, следующая команда будет считывать содержимое file1.txt и file2.txt и отображать результат в терминале:
Вы можете объединить два или более текстовых файла и записать их в файл.
Если combinedfile.txt файл не существует, команда создаст его. В противном случае файл будет перезаписан.
Для того, чтобы объединить содержимое file1.txt и file2.txt и добавить результат на file3.txt использование ( >> оператор):
Если файла нет, он будет создан.
Создание файлов
В следующем примере мы создаем новый файл с именем file1.txt :
Если файл с именем file1.txt присутствует, он будет перезаписан. Используйте >> оператор ‘ ‘, чтобы добавить вывод в существующий файл.
Вывод
Команда cat может отображать, комбинировать и создавать новый файл.
cat в Linux – всё что нужно знать
Прежде чем мы начнём углубляться в тему статьи, мы должны войти в VPS через SSH и быстро проверить основной синтаксис. Команда принимает имя файла в качестве аргумента вместе с опциями, уточняющими отдельные операции.
Чтобы найти все доступные опции, просто введите cat –help в терминале.
Подготовительные действия
Сначала хотелось бы уделить время предварительным действиям, поскольку не все юзеры знакомы с принципом работы консоли. Дело в том, что при открытии файла требуется либо указывать точный путь к нему, либо производить запуск команды, находясь непосредственно в самой директории через «Терминал». Поэтому мы советуем для начала просмотреть такое руководство:
Таким методом осуществляется переход к определенной директории через стандартную консоль. Дальнейшие действия также будут производиться через эту папку.
Просмотр содержимого
Одна из основных функций упомянутой команды — просмотр содержимого различных файлов. Вся информация отображается отдельными строками в «Терминале», а применение cat выглядит так:
Вот так работает cat без применения доступных аргументов. Если же вы просто пропишите в «Терминале»cat, то получите некое подобие консольного блокнота с возможностью записывать нужное количество строк и сохранять их нажатием на Ctrl + D.
Нумерация строк
Удаление повторяющихся пустых строк
Небольшой вывод
В итоге можно сказать, что популярная утилита имеет три основных функции:
Отображение текстовых файлов
Простейший способ использования cat – задать команде имя файла. Содержимое текстового файла будет выведено на экран. Например, следующая команда прочитает содержимое файла mytext.txt и выведет его в стандартный поток вывода (экран вашего терминала):
cat mytext.txt
Если файл слишком длинный, он пролистается, и вы увидите только последний экран. При необходимости просмотреть документ постранично или прокручивать его вперёд и назад можно воспользоваться такими средствами просмотра как pg, more или less.
Когда указано несколько файлов, cat будет выводить их последовательно, объединяя содержимое в потоке стандартного вывода. Поэтому следующая команда выведет содержимое двух текстовых файлов, как если бы они были одним:
cat mytext.txt mytext2.txt
Создание нового файла с помощью cat
]# cat > new_file это новый файл
]# cat > new_file это новый файл
С помощью cat и символа > мы перенаправили стандартный вывод в файл new_file. Для завершения заполнения файла данными перейдите на новую строку и нажмите Ctrl+D.
Просмотр файлов с помощью cat в Linux
Для просмотра файла просто наберите:
#cat [hc@host
]# cat new_file это новый файл
]# cat new_file это новый файл
Можно вывести с номерами строк:
Можно просмотреть содержимое нескольких файлов.
Обратите внимание, что содержимое выводится единым массивом данных, что хорошо видно по тому, что содержание второго файла вывелось строкой под номером 4 – нумерация не началась заново при выводе этого файла. Т.е. cat, как это и заложено в ее названии, склеила файлы.
Редирект Контента с Помощью Команды Cat
Вы можете не только отобразить содержимое файла в консоли, но и перенаправить вывод в другой файл, используя параметр >. Вот пример команды:
cat ishodnyifail.txt > failnaznachenija.txt
Если файл назначения не существует, команда создаст его или перезапишет существующий с таким же именем.
Чтобы добавить содержимое в файл назначения, используйте опцию >>:
cat ishodnyifail.txt >> failnaznachenija.txt
Конкатенация («Склеивание») Файлов с Помощью Команды Cat
Команда cat также позволяет объединять несколько файлов в один. По сути это работает так же, как и функция перенаправления выше, но с несколькими исходными файлами.
cat ishodnyifail1.txt ishodnyifail2.txt > failnaznachenija.txt
Как и ранее, приведенная выше команда создаст файл назначения, если он не существует, или перезапишет существующий файл с таким же именем.
Обозначение Конца Строки Командой Cat
С помощью команды cat также можно обозначить конец строки. Маркер конца строки — символ $. Чтобы реализовать эту функцию, используйте параметр -E:
Нумерация Строк с Помощью Команды Cat в Linux
Эта команда также позволяет отобразить содержимое файла с пронумерованными строками. Реализует эту функцию опция -n:
Присоединение содержимого текстового файла в конец другого текстового файла
Вместо перезаписи файла можно присоединить текст файла-источника к другому файлу при помощи оператора перенаправления «>>».
Например, команда:
cat mytext.txt >> another-text-file.txt
Прочтет содержимое mytext.txt и запишет его в конец файла another-text-file.txt. Если этот файл не существует, он будет создан, и содержимое mytext.txt будет записано в новый файл.
Это работает также для нескольких файлов. Следующая команда последовательно запишет содержимое mytext.txt и mytext2.txt в конец файла another-text-file.txt:
cat mytext.txt mytext2.txt >> another-text-file.txt
Добавление стандартного ввода в вывод cat
Если в качестве имени файла задать дефис («-«), cat осуществляет считывание из стандартного потока ввода. Например, если у вас есть файл list.txt со следующим текстом:
вы можете воспользоваться командой echo для вывода текста, направить этот текст команде cat и указать ей объединить его с содержимым файла:
echo “Мой список покупок” | cat – list.txt
На выходе получим следующий текст:
Мой список покупок
яблоки
апельсины
масло
хлеб
Основные параметры команды cat
После того, как вы поиграли с различными форматами двоичных файлов, вернемся к простым старым текстовым файлам, изучив пару опций, специально предназначенных для работы с этими файлами. Несмотря на то, что они не являются частью стандарта POSIX, эти параметры являются переносимыми по версиям BSD и GNU для cat. Обратите внимание: мы не претендуем на то, что мы здесь разберем все моменты, поэтому проверьте страницу man, чтобы увидеть полный список опций, поддерживаемых вашей системой команду cat!
-n: числовые строки
С помощью опции n команда cat префикс каждой выходной строки по номеру строки:
-s: подавление повторяющихся пустых выходных строк
-b: число только непустые строки
-v: просмотр невидимых символов
С помощью этой опции управляющие символы будут отображаться как каретка ( ^), за которыми следует соответствующий символ ASCII (например, возврат каретки, 13 байт отображается так, ^M как M в ASCII – 64 + 13), а символы с набором бит высокого порядка появится в «мета» описании M- за которой следует представление, соответствующее 7 младшим битам (например, байт 141 будет отображаться так, M-^M как 141 – 128 + 13).
Хотя, казалось бы, эзотерическая, эта функция может быть полезна при работе с двоичными файлами, например, если вы хотите изучить необработанную информацию, встроенную в файл JPEG:
-t: отображение невидимых символов, включая вкладки
-et: показать все скрытые символы
Копирование текстового файла
Обычно копирование осуществляется командой cp, но для копирования текстовых файлов вы можете аналогичным образом использовать команду cat. cat отправляет результат в stdout (стандартный поток вывода), обычно это экран терминала. Однако, можно перенаправить результат в файл при помощи символа перенаправления “>”.
cat mytext.txt > newfile.txt
считает содержимое mytext.txt и отправить его в стандартный поток вывода, но вместо отображения текста оболочка перенаправит результат в файл newfile.txt. Если этот файл не существует, он будет создан. Если он будет же существует, то будет перезаписантс потерей предыдущего содержимого, поэтому будьте осторожны.
Аналогично можно объединять несколько файлов в один. Например, команда
cat mytext.txt mytext2.txt > newfile.txt
считает содержимое mytext.txt и mytext2.txt и запишет объединенный текст в newfile.txt. При отсутствии файла он будет создан, при наличии — перезаписан.
Удаление Пустых Строк
Чтобы удалить пустые повторяющиеся строки и сэкономить место на дисплее, вы можете применить опцию -s. Но имейте в виду, что этот параметр удалит только повторяющиеся пустые строки, оставив одну пустую строку.
Нумерация Непустых Строк с Помощью Команды Cat в Linux
Чтобы вывести номер каждой строки, не учитывая пустых, используйте опцию -b. Но помните, что параметр -b отменяет опцию -n:
Отображение Файла в Обратном Порядке
Чтобы просмотреть содержимое файла в обратном порядке, начиная с последней строки и заканчивая первой, просто используйте команду tac (команду cat, написанную задом наперёд):
Примеры
Рассмотрим простой пример. Нужно узнать имя компьютера. Для этого, считаем файл hostname.
cat /etc/hostname
Читаем имя компьютера
Заключение
cat — простой, но очень полезный инструмент для работы с данными в текстовых файлах, системных логах, файлах конфигурации и любыми другими читаемыми для человека данными.