Команда cat в Linux
Команда cat считается наиболее востребованной при работе в операционных системах Linux. И все из-за того, что она, в зависимости от используемых опций, позволяет просматривать содержимое файлов, склеивать их и т.д. Поэтому освоение UNIX-совместимых платформ часто начинают с нее и подобных команд.
Назначение и синтаксис команды cat
Наименование команды произошло за счет сокращения слова «concatenate» («конкатенация, сцепка»). Команда позволяет создавать и объединять содержимое файлов, а также считать данные в указанном файле и отображать их на экране монитора. Правда, есть ряд операторов и опций, которые расширяют функционал, например, перенаправляют вывод или отображают то, что вводится на клавиатуре в текущий момент.
Общий синтаксис ввода команды выглядит так:
$ cat опции файл1 файл2 …
Передавать утилите можно неограниченное количество файлов. Их содержимое будет выводиться на мониторе последовательно, без каких-либо разделителей. Если нужно изменить метод вывода, понадобится ввести опции.
Основной их перечень:
- -b – включить нумерацию непустых строк (заполненных данными).
- -E – в конце каждой строки будет отображаться символ $.
- -n – пронумеровывать все строки, даже пустые (без данных).
- -s – автоматически удалять пустые повторяющиеся строки.
- -T – помечать табуляции комбинацией символов ^I.
- -h – вывести на экран монитора справочную информацию.
- -v – отобразить текущую версию утилиты.
Вот такой краткий перечень опций прилагается к приложению cat. Его достаточно для выполнения операций, задуманных разработчиком.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Примеры использования команды cat
Простейший вариант ввода команды, когда она просто отображает содержимое указанного файла:
$ cat file
Если нужно передать системе несколько файлов, достаточно перечислить их в параметрах:
$ cat file1 file2 file3
Большинство команд, используемых в Linux, поддерживают стандартный поток ввода данных при помощи символа «-». В случае с cat это будет выглядеть так:
$ cat - file1
Теперь опробуем одну из ранее приведенных опций. Например, нумерацию непустых строк:
$ cat -b file1
Или всех строк, имеющихся в файле:
$ cat -n file1
Если попутно требуется удалить повторяющиеся пустые строки, команда будет выглядеть так:
$ cat -n -b file1
При отсутствии параметров и опций команда будет отображать данные из стандартного ввода:
Чтобы завершить запись, нужно нажать . Фактически получается примитивный текстовый редактор, ведь утилита считывает вводимые символы и выводит их на экран монитора. Можно направить данные в указанный файл на диске:
$ cat > file1 $ cat file1
Чтобы записать данные из нескольких файлов в один, команда будет выглядеть так:
$ cat file1 file2 > file3 $ cat file3
Основное назначение команды cat – считывание данных из файлов, поэтому можно смело экспериментировать с комбинацией опций и параметров. При объединении файлов рекомендуется указывать уникальное имя создаваемого файла, дабы исключить риски перезаписи важной информации.
Команда Cat в Linux: Использование и Примеры
Команда cat в Linux — одна из самых полезных утилит, которые обязательно стоит выучить. Являясь сокращением английского слова «concatenate» (конкатенация), она позволяет создавать, объединять, а также выводить содержимое файлов в командной строке или в другом файле.
Утилита не требует дополнительных установок, так как предварительно установленна в пакете coreutils в любой системе на основе Debian или Red Hat.
В этом уроке мы рассмотрим общие способы использования команды Linux cat, объясняя её особенности.
Команда Cat: Синтаксис
Прежде чем мы начнём углубляться в тему статьи, мы должны войти в VPS через SSH и быстро проверить основной синтаксис. Команда принимает имя файла в качестве аргумента вместе с опциями, уточняющими отдельные операции.
cat [ОПЦИЯ] [ФАЙЛ]
Чтобы найти все доступные опции, просто введите cat –help в терминале.
Создание Файла с Помощью Команды Cat
С помощью команды cat вы можете быстро создать файл и поместить в него текст. Для этого используйте оператор > redirect, чтобы перенаправить текст в файл.
cat > imiafaila.txt
Файл создан, и вы можете начать заполнять его текстом. Если вы хотите добавить несколько строк, просто нажимайте Enter в конце каждой строки. Когда вы закончите, нажмите CTRL+D, чтобы выйти из файла.
Чтобы убедиться, что файл действительно создан, просто введите в терминале следующую команду ls:
ls -l
Просмотр Содержимого Файла с Помощью Команды Cat
Это один из самых базовых примеров использования команды cat. Без каких-либо дополнительных опций команда прочитает содержимое файла и выведет его в консоли.
cat imiafaila.txt
Для удобного просмотра длинных файлов, используйте параметр | more, который позволит скролить выходные данные по одному скрину за раз:
cat filename.txt | more
Также вы можете отобразить содержимое более одного файла. Например, чтобы вывести содержимое всех текстовых файлов, введите в терминале следующую команду:
cat *.txt
Редирект Контента с Помощью Команды Cat
Вы можете не только отобразить содержимое файла в консоли, но и перенаправить вывод в другой файл, используя параметр >. Вот пример команды:
cat ishodnyifail.txt > failnaznachenija.txt
Если файл назначения не существует, команда создаст его или перезапишет существующий с таким же именем.
Чтобы добавить содержимое в файл назначения, используйте опцию >>:
cat ishodnyifail.txt >> failnaznachenija.txt
Конкатенация («Склеивание») Файлов с Помощью Команды Cat
Команда cat также позволяет объединять несколько файлов в один. По сути это работает так же, как и функция перенаправления выше, но с несколькими исходными файлами.
cat ishodnyifail1.txt ishodnyifail2.txt > failnaznachenija.txt
Как и ранее, приведенная выше команда создаст файл назначения, если он не существует, или перезапишет существующий файл с таким же именем.
Обозначение Конца Строки Командой Cat
С помощью команды cat также можно обозначить конец строки. Маркер конца строки — символ $. Чтобы реализовать эту функцию, используйте параметр -E:
cat -E imiafaila.txt
Нумерация Строк с Помощью Команды Cat в Linux
Эта команда также позволяет отобразить содержимое файла с пронумерованными строками. Реализует эту функцию опция -n:
cat -n imiafaila.txt
Отображение Непечатаемых Символов
Чтобы показать непечатаемые символы, добавьте к команде cat опцию -v, например:
cat -v imiafaila.txt
Чтобы показать только символы табуляции, используйте параметр -T:
cat -T imiafaila.txt
Табуляции будут отображаться как ^I.
Удаление Пустых Строк
Чтобы удалить пустые повторяющиеся строки и сэкономить место на дисплее, вы можете применить опцию -s. Но имейте в виду, что этот параметр удалит только повторяющиеся пустые строки, оставив одну пустую строку.
cat -s imiafaila.txt
Нумерация Непустых Строк с Помощью Команды Cat в Linux
Чтобы вывести номер каждой строки, не учитывая пустых, используйте опцию -b. Но помните, что параметр -b отменяет опцию -n:
cat -b imiafaila.txt
Отображение Файла в Обратном Порядке
Чтобы просмотреть содержимое файла в обратном порядке, начиная с последней строки и заканчивая первой, просто используйте команду tac (команду cat, написанную задом наперёд):
tac imiafaila.txt
Выводы
Вот и всё. Теперь вы знаете, как работает команда cat в Linux и ознакомились с основными примерами её использования. Этого достаточно, чтобы начать применять её на практике. Если же вы хотите изучить эту утилиту более подробно, просто вызовите её справочную страницу с помощью команды man cat!
Мы надеемся, что эта статья помогла вам улучшить навыки работы с командной строкой Linux. Увидимся в следующем руководстве!
Ольга вже близько восьми років працює менеджером у сфері IT, три з яких вона займається SEO. Написання технічних завдань та інструкцій — один з її основних обов’язків. Її хобі — дізнаватися щось нове і створювати цікаві та корисні статті про сучасні технології, веброзробку, мови програмування, пошукову оптимізацію сайтів та багато іншого.
Команда cat в Linux
cat — одна из наиболее часто используемых команд в Linux. Она считывает данные из файлов и выводит их содержимое. Это самый простой способ отображения содержимого файла в командной строке.
Синтаксис
cat [ОПЦИИ]. [ФАЙЛ].
Ее можно использовать для отображения текстовых файлов, копирования текстовых файлов в новый документ, присоединения содержимого текстового файла в конце другого текстового файла для их объединения.
Отображение текстовых файлов
Простейший способ использования cat - задать команде имя файла. Содержимое текстового файла будет выведено на экран. Например, следующая команда прочитает содержимое файла mytext.txt и выведет его в стандартный поток вывода (экран вашего терминала):
cat mytext.txt
Если файл слишком длинный, он пролистается, и вы увидите только последний экран. При необходимости просмотреть документ постранично или прокручивать его вперёд и назад можно воспользоваться такими средствами просмотра как pg, more или less.
Когда указано несколько файлов, cat будет выводить их последовательно, объединяя содержимое в потоке стандартного вывода. Поэтому следующая команда выведет содержимое двух текстовых файлов, как если бы они были одним:
cat mytext.txt mytext2.txt
Копирование текстового файла
Обычно копирование осуществляется командой 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. При отсутствии файла он будет создан, при наличии — перезаписан.
Присоединение содержимого текстового файла в конец другого текстового файла
Вместо перезаписи файла можно присоединить текст файла-источника к другому файлу при помощи оператора перенаправления «>>».
Например, команда:
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
На выходе получим следующий текст:
Мой список покупок
яблоки
апельсины
масло
хлеб
Опции
Данные опции доступны для GNU cat, стандартной для большинства дистрибутивов Linux. Для уточнения опций, доступных конкретно в вашей системе, обратитесь к руководству.
-n, —number — выводить номер каждой строки результата.
-b, —number-nonblank — выводить номер каждой строки результата, кроме пустых. Эта опция отменяет -n.
-E, —show-ends — отображать «$» в конце каждой строки.
-s, —squeeze-blank — исключать из вывода повторяющиеся пустые строки.
-T, —show-tabs — показывать символы табуляции как ^I.
-v, —show-nonprinting — показывать непечатаемые символы, кроме табуляции и конца строки.
-t — показывать непечатаемые символы, кроме конца строки.
-e — показывать непечатаемые символы, кроме табуляции.
-A, —show-all — показывать все непечатаемые символы.
—help — вывести справку и выйти.
—version — вывести информацию о версии и выйти.
Заключение
cat — простой, но очень полезный инструмент для работы с данными в текстовых файлах, системных логах, файлах конфигурации и любыми другими читаемыми для человека данными.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Похожие записи:
- Установка и настройка rsync
- Установка программ tar bz2, из исходных кодов в Linux
- Команда Sed в Linux, вывод текста, удаление, замена.
- Структура разделов для установки Linux
Команда cat linux — разбираем от А до Я!
Команда cat в linux (полное описание) — это сокращение от concatenate. На самом деле это некая утилита, которая позволяет вам сцеплять, связывать файлы и т.д. Она может выводить содержимое файла, к примеру:
root@fantom-Lenovo:/home/jakudza# ls (ls — просмотр содержимого каталога)
test.txt (то что сейчас в каталоге, один файл test.txt)
root@fantom-Lenovo:/home/jakudza# cat test.txt (команда cat — читает файл test.txt)
Это написано внутри файла test.txt
Если содержимое файла очень большое, к примеру текст на 5000 символов. Может возникнуть проблема! Произойдёт быстрая прокрутка(мелькание) текста. В данном случае пишем вот так:
root@fantom-Lenovo:/home/jakudza# cat test.txt | less |
От простого к сложному:
Формат команды: cat filename1 [filename2. ]
Стандартно, команда cat может слить и вывести файл на стандартный вывод(т.е. на монитор). Или иначе говоря, данная команда просто выводит содержимое перечисленных файлов (filename, и т.д.) на стандартный вывод:
1. Команда ниже выведет на экран содержимое файла — «на стандартный вывод»:
cat filename1
2. Команда ниже «сливает» первые 2 файла, и перемещает их в третий filename3 (уточнение: команда взяла информацию из первого и второго файла. Появилась некая новая информация, состоящая из двух источников. И эту информацию мы передали не на «стандартный вывод», а в файл filename3, благодаря символу «>»):
cat filename1 filename2 > filename3
3. К примеру, если нам надо «соединить» 2 файла:
cat filename1 >> filename2 (Данной командой мы просто добавили содержимое первого файла ко второму) |
* Как мы видим в данных примерах используется «>»(одинарный или двойной) — запоминайте что он делает! Зачастую в Университете или ином месте, задают вопросы: допустим команда «>» — делает то-то, а что делает «>>»? и т.д.
4. Примеры «>»:
команда > имя_файла (для стандартного вывода)
команда < имя_файла(для переназначения стандартного ввода)
5. Перенаправление стандартного вывода:
— Перенаправление означает, что система должна использовать файл или устройство, указанное пользователем, вместо «стандартного ввода» или «стандартного вывода«.
— Чтобы перенаправить стандартный вывод, используйте символ «>», о котором мы говорили выше.
— Размещение «>» после команды cat (или после любой другой команды, которая выдает результаты своей работы на «стандартный вывод») перенаправит результат ее работы «в файл», указанный за символом «>».
Что будет если команда cat без аргументов, при этом мы вводим значения, после нажатия клавиши «Enter»: