Cat Command in Linux
The cat
command is one of the most widely used commands in Linux. The name of the cat
command comes from its functionality to concatenate files. It can read, concatenate, and write file contents to the standard output. If no file is specified or the input file name is specified as a single hyphen (-
), it reads from the standard input.
cat
is most commonly used to display the contents of one or multiple text files, combine files by appending one file’s contents to the end of another file, and create new files.
In this article, we will show you how to use the cat
a command through practical examples.
cat
Command Syntax
Before going into how to use the cat
command, let’s start by reviewing the basic syntax.
The cat utility expressions take the following form:
cat [OPTIONS] [FILE_NAMES
OPTIONS
-cat
options . Usecat --help
to view all available options.FILE_NAMES
- Zero or more file names.
Displaying File Contents
The most basic and common usage of the cat
the command is to read the contents of files.
For example, the following command will display the contents of the /etc/issue
file on the terminal:
cat /etc/issue
Redirect Contents of File
Instead of displaying the output to stdout
(on the screen), you can redirect it to a file.
The following command will copy the contents of file1.txt
to file2.txt
using the (>
) operator :
cat file1.txt > file2.txt
If the file2.txt
file doesn’t exist, the command will create it. Otherwise, it will overwrite the file.
Use the (>>
) operator to append the contents of file1.txt
to file2.txt
:
Print Line Numbers
To display contents of a file with line numbers, invoke cat
with the -n
option:
cat -n /etc/lsb-release
1 DISTRIB_ID=Ubuntu
2 DISTRIB_RELEASE=18.04
3 DISTRIB_CODENAME=bionic
4 DISTRIB_DESCRIPTION="Ubuntu 18.04.1 LTS"
Suppress Repeated Empty Lines
Use the -s
option to omit the repeated empty output lines:
cat -s file.txt
Display TAB
characters
The -T
the option allows you to visually distinguish between tabs and spaces.
cat -T /etc/hosts
127.0.0.1^Ilocalhost
127.0.1.1^Iubuntu1804.localdomain
The TAB characters will be displayed as ^I
.
Display End of Lines
To display the invisible line ending character use the -e
argument:
cat -e /etc/lsb-release
DISTRIB_ID=Ubuntu$
DISTRIB_RELEASE=18.04$
DISTRIB_CODENAME=bionic$
DISTRIB_DESCRIPTION="Ubuntu 18.04.1 LTS"$
The Line endings will be displayed as $
.
Concatenating Files
When passing two or more file names as arguments to the cat
command, the contents of the files will be concatenated. cat
reads the files in the sequence given in its arguments and displays the file’s contents in the same sequence.
For example, the following command will read the contents of file1.txt
and file2.txt
and display the result in the terminal:
cat file1.txt file2.txt
The following command will concatenate the contents of file1.txt
and file2.txt
and write them to a new file combinedfile.txt
using the (>
) operator :
cat file1.txt file2.txt > combinedfile.txt
If the combinedfile.txt
file doesn’t exist, the command will create it. Otherwise, it will overwrite the file.
To concatenate the contents of file1.txt
and file2.txt
and append the result to file3.txt
use the (>>
) operator:
cat file1.txt file2.txt >> file3.txt
If the file is not present, it will be created.
When concatenating files with cat
, you can use the same arguments as shown in the previous section.
Creating Files
Creating small files with cat
it often easier than opening a text editor such as nano , Vim, Sublime Text , or Visual Studio Code .
To create a new file, use the cat
command followed by the redirection operator (>
) and the name of the file you want to create. Press Enter
, type the text and once you are done, press the CRTL+D
to save the file.
In the following example, we are creating a new file named file1.txt
:
cat > file1.txt
If a file named file1.txt
is present, it will be overwritten. Use the ‘>>
’ operator to append the output to an existing file.
cat >> file1.txt
Conclusion
The cat
the command can display, combine and create new files.
If you have any questions or feedback, feel free to leave a comment.
0 Comments
CAN FEEDBACK
Emoji