Cat command

The cat (short for “concatenate“) command is one of the most frequently used command in Linux/Unix like operating systems. cat command allows us to create single or multiple files, view contain of file, concatenate files and redirect output in terminal or files. In this article, we are going to find out handy use of cat commands with their examples in Linux.

Syntax:-

$ cat [OPTION] [FILE]...

Display Contents of File

In the below example, it will show contents of /etc/passwd file.

$ cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

narad:x:500:500::/home/narad:/bin/bash

$

View Contents of Multiple Files in terminal

In below example, it will display contents of test and test1 file in terminal.

$ ​cat test test1

Hello everybody

Hi world,

Create a File with Cat Command

We will create a file called test2 file with below command.

$ cat >test2

Write something

Press ctrl+z or ctrl+c

Use Cat Command with More & Less Options

If file having large number of content that won’t fit in output terminal and screen scrolls up very fast, we can use parameters more and less with cat command as show above.

$ cat song.txt | more

$ cat song.txt | less

Display line numbers of File

With -n option you could see the line numbers of a file song.txt in the output terminal.

$​ cat -n song.txt

1 "Heal The World"

2 There's A Place In

3 Your Heart

4 And I Know That It Is Love

5 And This Place Could

6 Be Much

7 Brighter Than Tomorrow

8 And If You Really Try

9 You'll Find There's No Need

10 To Cry

11 In This Place You'll Feel

12 There's No Hurt Or Sorrow


Display $ at the End of File.

In the below, you can see with -e option that ‘$‘ is shows at the end of line and also in space showing ‘$‘ if there is any gap between paragraphs. This options is useful to squeeze multiple lines in a single line.

$​ cat -e test

hello everyone, how do you do?$

Hey, am fine.$

How's your training going on?$


Display Tab separated Lines in File

In the below output, we could see TAB space is filled up with ‘^I‘ character.

$ cat -T test

hello ^Ieveryone, how do you do?

Hey, ^Iam fine.

^I^IHow's your training ^Igoing on?

Let's do ^Isome practice in Linux.


Display Multiple Files at Once

In the below example we have three files test, test1 and test2 and able to view the contents of those file as shown above. We need to separate each file with ; (semi colon).


$​ cat test; cat test1; cat test2

This is test file

This is test1 file.

This is test2 file.

Use Standard Output with Redirection Operator.

We can redirect standard output of a file into a new file else existing file with ‘>‘ (greater than) symbol. Careful, existing contents of test1 will be overwritten by contents of test file.

$​ cat test > test1


Appending Standard Output with Redirection Operator

Appends in existing file with ‘>>‘ (double greater than) symbol. Here, contents of test file will be appended at the end of test1 file.

$​ cat test >> test1


Redirecting Standard Input with Redirection Operator

This will create a file called test3 and all output will be redirected in a newly created file.

$​ cat test test1 test2 > test3


Sorting Contents of Multiple Files in a Single File.

This will create a file test4 and output of cat command is piped to sort and result will be redirected in a newly created file.



$

$​ cat test test1 test2 test3 | sort > test4

$


Post a Comment

If you have any doubts, Please let me know
Thanks!

Previous Post Next Post