- Writing Text to File Using Linux Cat Command
- 1. Overview
- 2. The cat Command
- 3. The Syntax
- 4. Making cat Read From stdin
- 5. Writing to a File Using cat
- 6. Appending Text to File Using cat
- 7. Here Document
- 8. Conclusion
- Запись в файлы с помощью команды cat в Linux
- Основы команд cat
- Синтаксис
- Отображение содержимого файла на стандартном выводе
- Запись текста в файл с помощью cat
- Объединение файлов с помощью cat
- Стандартный ввод между файлами
- Добавление файлов с помощью cat
- Объединение содержимого всего каталога файлов с помощью cat
- Перечисление номеров строк
- Напишите $ в конце каждой строки
- Сортировка строк составных файлов по конвейеру
- Вывод
- Источник:
Writing Text to File Using Linux Cat Command
The Kubernetes ecosystem is huge and quite complex, so it’s easy to forget about costs when trying out all of the exciting tools.
To avoid overspending on your Kubernetes cluster, definitely have a look at the free K8s cost monitoring tool from the automation platform CAST AI. You can view your costs in real time, allocate them, calculate burn rates for projects, spot anomalies or spikes, and get insightful reports you can share with your team.
Connect your cluster and start monitoring your K8s costs right away:
1. Overview
In this tutorial, we’ll look at how to write text into a file using the Linux cat command.
2. The cat Command
The cat command is a utility command in Linux. One of its most common usages is to print the content of a file onto the standard output stream. Other than that, the cat command also allows us to write some texts into a file.
3. The Syntax
Let’s take a look at the general syntax of the cat command:
First, OPTION is a list of flags we can apply to modify the command’s printing behavior, whereas FILE is a list of files we want the command to read.
From the documentation, we can see that if no value is passed for the FILE argument, the cat command will read from standard input. Similarly, it will behave the same when a dash “-” value is passed for the FILE argument. In combination with the Linux redirection operators, we can make the cat command listen to the standard input stream and redirect the content to a file.
4. Making cat Read From stdin
Let’s execute the cat command:
After we enter the command, we’ll see that the command will not return anything. This is because the cat command is now listening to the standard input.
Let’s try to enter some texts into the terminal:
cat This is a new line This is a new line
We can see that whatever texts we’ve entered into the standard input stream will be echoed to the output stream by the cat command. Once we are done, we can terminate the command by pressing CTRL+D.
5. Writing to a File Using cat
To write to a file, we’ll make cat command listen to the input stream and then redirect the output of cat command into a file using the Linux redirection operators “>”.
Concretely, to write into a file using cat command, we enter this command into our terminal:
We’ll see that once again the terminal is waiting for our input.
However, this time it won’t echo the texts we’ve entered. This is because we’ve instructed the command to redirect the output to the file readme.txt instead of the standard output stream.
Let’s enter some texts into the terminal, followed by CTRL+D to terminate the command:
cat > readme.txt This is a readme file. This is a new line.
The file readme.txt will now contain the two lines we’ve entered.
To verify our result, we can use the cat command once again:
cat readme.txt This is a readme file. This is a new line.
Voila! We’ve written into a file using the cat command.
6. Appending Text to File Using cat
One thing we should note in the previous example is that it’ll always overwrite the file readme.txt.
If we want to append to an existing file, we can use the “>>” operator:
cat >> readme.txt This is an appended line.
To verify that the last command has appended the file, we check the content of the file:
cat readme.txt This is a readme file. This is a new line. This is an appended line.
There we have it. The line we enter is appended to the end of the file instead of replacing the entire document.
7. Here Document
It is also worth noting that the here document syntax can be used with the cat command:
EOF is a token that tells the cat command to terminate when it sees such a token in the subsequent lines.
The token can be any other value as long as it is distinct enough that it won’t appear in the input stream literal. Do note that both the starting and ending EOF tokens will not show up in the readme.txt file.
8. Conclusion
In this article, we’ve taken a look at the general syntax of the cat command.
We’ve also shown how we can make cat command listen from standard input stream instead of a specific file.
Finally, we’ve demonstrated how to write or append to a file, using the cat command along with the Linux redirection operators.
Запись в файлы с помощью команды cat в Linux
Команда cat представляет собой инструмент Unix, используемый для управления и отображения содержимого файлов. Команда получила свое название от слова «concatenate», потому что, помимо прочего, она может объединять файлы.
В этой статье мы рассмотрим несколько простых способов использования этой команды для записи текста в файл с примерами. Использование cat очень простое, поэтому для продолжения работы не требуется никакого предварительного программирования или опыта работы с Unix.
Основы команд cat
Начнем с того, что мы просто опишем основы команды cat , чтобы помочь вам, если вы никогда не использовали ее раньше или вам нужен краткий обзор.
Синтаксис
Чтобы быстро найти синтаксис или параметры команды, запустите cat с параметром справки:
Или, вы можете использовать:
Эти команды должны отображать следующий список параметров:
-A, --show-all equivalent to -vET -b, --number-nonblank number nonempty output lines, overrides -n -e equivalent to -vE -E, --show-ends display $ at end of each line -n, --number number all output lines -s, --squeeze-blank suppress repeated empty output lines -t equivalent to -vT -T, --show-tabs display TAB characters as ^I -u (ignored) -v, --show-nonprinting use ^ and M- notation, except for LFD and TAB --help display this help and exit --version output version information and exit
Отображение содержимого файла на стандартном выводе
Чтобы вывести содержимое файла на стандартный вывод, просто назовите файл, который хотите отобразить:
Если файл находится в другом каталоге, вам нужно указать его:
Мы ожидаем увидеть содержимое этого файла, распечатанное на стандартный вывод, в данном случае — терминал:
Это наиболее распространенное использование команды cat, поскольку она позволяет легко просматривать содержимое файла, не открывая текстовый редактор.
Запись текста в файл с помощью cat
Чтобы перенаправить вывод команды cat из стандартного вывода в файл, мы можем использовать оператор перенаправления вывода > :
Это приведет к замене содержимого filename2 на содержимое filename1 , поэтому убедитесь, что он не содержит ничего, что вы бы не хотели потерять. Теперь filename2 содержит:
Оператор перенаправления вывода перенаправит вывод любой вызываемой нами команды. Например, давайте попробуем это с помощью команды pwd , которая печатает имя текущего рабочего каталога:
Если мы посмотрим сейчас на testfile :
Он содержит путь к текущему рабочему каталогу:
Если файл, на который вы перенаправляете, не существует, будет создан файл с таким именем:
cat filename1 > newfilename
Объединение файлов с помощью cat
Объединить несколько файлов с помощью cat очень просто — просто перечислите файлы в желаемом порядке:
cat filename1 filename2 > outputfile cat outputfile
Этот код берет файлы filename1 и filename2 , сцепляет их и выводит на новый outputfile :
Content of filename1! Content of filename2!
Стандартный ввод между файлами
Когда имя входного файла отсутствует в списке, cat начинает чтение со стандартного ввода до тех пор, пока не достигнет EOF (конца файла). Сигнал о конце файла отправляется ctrl+d в командной строке:
$ cat > outputfile Hello World $ cat outputfile
Мы даже можем добавить текст из стандартного ввода между файлами, которые мы хотим объединить, используя — , чтобы указать, где мы ожидаем стандартный ввод. Если у нас есть такие файлы, как filename1 , filename2 и filename3 , и нам нужен текст из стандартного ввода между filename1 и filename2 , мы должны написать:
$ cat filename1 - filename2 filename3 > output Text from standard input! $ cat output
Проверив output , мы увидим что-то вроде:
Content of filename1! Text from standard input! Content of filename2! Content of filename3!
Добавление файлов с помощью cat
В предыдущих примерах использование оператора перенаправления отбрасывало предыдущее содержимое файла output . Что, если мы хотим добавить новый контент к старому? Для добавления файлов мы используем оператор >> :
cat filename1 filename2 >> output cat output
Original output file contents. Content of filename1! Content of filename2!
Объединение содержимого всего каталога файлов с помощью cat
Чтобы объединить все содержимое всех файлов в каталоге, мы используем подстановочный знак * :
Чтобы объединить все содержимое всех файлов в текущем рабочем каталоге, мы будем использовать:
* также можно использовать для объединения всех файлов с одинаковым расширением:
Перечисление номеров строк
Перечисление всех строк вывода осуществляется с помощью опции -n :
cat -n filename1 filename2 filename3 > output cat output
Что бы написать что-то вроде:
1 Content of filename1! 2 Content of filename2! 3 Content of filename3!
Напишите $ в конце каждой строки
В опции -E знаменует конец каждой строки в файле с $ :
cat -E filename1 filename2 filename3 > output cat output
Сортировка строк составных файлов по конвейеру
Это немного обман. Команда cat не может сортировать, но для этого мы можем использовать конвейер. Команда канала ( | ) используется для превращения вывода одной команды во ввод другой. Чтобы отсортировать строки файла, мы будем использовать обе cat и еще одну команду sort :
cat filename2 filename3 filename1 | sort > output cat output
Content of filename1! Content of filename2! Content of filename3!
Вывод
Cat — это простой, но мощный инструмент Unix, который предустановлен в большинстве систем. Его можно использовать отдельно или в сочетании с другими командами с помощью каналов. Первоначально созданный Кеном Томпсоном и Деннисом Ритчи в 1971 году, cat простой в использовании и интуитивно понятный функционал выдерживает испытание временем.
В этой статье мы изучили некоторые возможности использования команды cat для записи текста в файлы, проверки содержимого, объединения и добавления файлов, а также для перечисления строк и их сортировки.