16 Quick Cat Command Examples in Linux

cat stands for Concatenate. cat command is one of the basic command in Linux & Unix. It is used to create new files, concatenate files and and also used to view the contents of files on the standard output. In this article, we will learn cat command with 16 quick examples.

Basic syntax of cat command :

# cat <options> <File>

Options:

cat-command-options

Example 1)  Create file with cat command

Let’s suppose i want to create a new file with name ‘linux_world’. Type the following cat command followed by the text you want in to insert in the file. Make sure you type ‘Ctrl-d’ at the end to save the file.

[root@linuxtechi ~]# cat > linux_world
Hi this is my first file in linux.
Linux always rocks
Thanks
[root@linuxtechi ~]#

Example 2)  View the Content of a file

To display or view the content of existing file using cat command, use the below syntax

# cat {file_name}

To view the contents of linux_world file, run

[root@linuxtechi ~]# cat linux_world
Hi this is my first file in linux.
Linux always rocks
Thanks
root@linuxtechi ~]#

Example 3) View the content of multiple files

To view the content of multiple files with cat command, then type cat followed the file names, example is shown below

[root@linuxtechi ~]# cat linux_world linux_distributions /etc/fstab

Above command will display output of three files on the terminal.

Example 4) View content page wise

For example if we have a large file whose contents can’t be displayed at once on the screen. So in that case we can use more and less command with cat to view the contents page wise.

[root@linuxtechi ~]# cat /etc/passwd | more
[root@linuxtechi ~]# cat /etc/passwd | less

Example 5) cat command without filename arguments

if we don’t specify any arguments in the cat command then it will read the inputs from the keyboard attached to the system. Type some text after entering the cat command.

[root@linuxtechi ~]# cat
Ubuntu Linux Rocks at desktop Level

Now press ‘Ctrl-d‘ to inform cat that it has reached end of file (EOF). In this case it will display the line of text twice because it copies std input to std output.

[root@linuxtechi ~]# cat
Ubuntu Linux Rocks at desktop Level
Ubuntu Linux Rocks at desktop Level
[root@linuxtechi ~]#

Example 6) View the content with line numbers

Use ‘-n’ option in cat command to view content of a file along with the line numbers.

[root@linuxtechi ~]# cat -n linux_world
1 Hi this is my first file in linux.
2 Linux always rocks
3 Thanks
[root@linuxtechi ~]#

In case, if your file has blank lines , then above command will also display the number of blank lines as well, so to remove the numbering of blank lines , we can use ‘-b‘ option in place of ‘-n’ in the above command.

Example 7) Copy content from one file to another

Using greater than ‘> symbol in cat command,  we can copy the contents of one file to another , example is shown below :

[root@linuxtechi ~]# cat linux_world > linux_text
[root@linuxtechi ~]#

In this case, if there are any contents in linux_text file then it will be overwritten by the contents of linux_world file

Example 8) Append content of one file to another

Using double greater than symbol >> in cat command, we can append the contents of one file to another. Example is shown below :

[root@linuxtechi ~]# cat /etc/passwd >> linux_text
[root@linuxtechi ~]#

Above Command will append the contents of /etc/passwd file to linux_text file at the end. Use cat command to verify the contents of linux_text file.

cat-command-more

Example 9) Redirecting the output of multiple files into a single file

cat command can also be used to merge the content of multiple files into a single file, example is shown below:

[root@linuxtechi ~]# cat linux_world linux_distributions /etc/fstab > linux_merge_text

Above command will merge the output of 3 files into a single file ‘linux_merge_text’.

cat_merge_option

Example 10) Getting input using standard input operator

Use ‘<‘ symbol in cat command to get input from standard input operator.

[root@linuxtechi ~]# cat < linux_distributions
RHEL
CentOS
Fedora
Ubuntu
SuSE
Linux Mint
[root@linuxtechi ~]#

Above cat command is getting input from the file using std input operator ‘<‘

Example 11) Sorting the output of multiple files into a single file

cat command can also sort the content of multiple files and merge it into a single file.By default sorting will done on the alphabetic order, if you want the sorting on the basis of numbers then use ‘-n’ option in the sort command.

[root@linuxtechi ~]# cat linux_text linux_distributions /etc/passwd | sort > linux_sort

Example 12) Insert $ at end of each line

If you wish to append $ (dolar) symbol at end of each line in the file then use ‘-E’ option in cat command.

[root@linuxtechi ~]# cat -E linux_world
Hi this is my first file in linux.$
Linux always rocks$
Thanks$
[root@linuxtechi ~]#

As we can see in the above output, $ is appended at the end of each line.

Example 13 Display tab spaces in the content

Let’s assume we have a file which has some tab spaces in the content. To view the tab spaces in the contents of a file with cat command, use using -T option. Example is shown below:

Let’s create a file with some tab spaces.

cat-file-tab-space

Now display these tab spaces as ^I

cat-with-T-option

Example 14) Squeeze repeated blank lines

Use ‘-s’ option in cat command to suppress the repeated blank lines. When we use -s option in cat command then it only show one blank line and will squeeze repeated blank line.

Let’s take am example of file ‘linux_blank’ , which consists of multiple repeated blank lines.

file-with-blank-space

Now remove the repeated blank lines in the output using below command.

[root@linuxtechi ~]# cat -s linux_blank 
test

test1
test2

test3

test4
[root@linuxtechi ~]#

Example 15 ) View the content in reverse order

tac is the reverse of cat command. tac will display the output in revers order example is shown below

[root@linuxtechi ~]# tac linux_world
Thanks
Linux always rocks
Hi this is my first file in linux.
[root@linuxtechi ~]#

Example 16 ) Display non-printing characters (-v)

-v option in the cat command is used to show the non-printing characters in the output. This option become useful when we are suspecting the CRLF ending lines, in that case it will show ^M at the end of each line.

[root@linuxtechi tmp]# cat test_file
hi there
[root@linuxtechi tmp]# cat -v test_file
hi there^M
[root@linuxtechi tmp]#

That’s all from article and i hope these examples are informative to you. Please do share your feedback and Comments.

Read Also : 11 df command examples in Linux

6 thoughts on “16 Quick Cat Command Examples in Linux”

  1. Parijatha Kumar

    The following command does not work.
    sudo cat hosts >> /etc/hosts.
    That’s why. I do …
    1) sudo su
    2) cat hosts >> /etc/hosts
    Is there a single command to achieve the result of the above two commands ?

    1. You can do the following:

      cat hosts | sudo tee /etc/hosts

      tee (which is executed with sudo rights) will write the output to /etc/hosts and print it to standard out.

  2. Be careful, Examples 4 and 11 are winners of the “Useless use of cat award,” which is often the case when you pipe cat output to another command.

Leave a Comment

Your email address will not be published. Required fields are marked *