Manage Files Effectively using head, tail and cat Commands in Linux

There are several commands and programs provided by Linux for viewing the contents of file. Working with files is one of the daunting task, most of the computer users be it newbie, regular user, advanced user, developer, admin, etc performs. Working with files effectively and efficiently is an art.

Files Effectively

Today, in this article we will be discussing the most popular commands called headtail and cat, most of us already aware of such commands, but very few of us implement it when needed.

1. head Command

The head command reads the first ten lines of a any given file name. The basic syntax of head command is:

For example, the following command will display the first ten lines of the file named ‘/etc/passwd‘.

If more than one file is given, head will show the first ten lines of each file separately. For example, the following command will show ten lines of each file.

If it is desired to retrieve more number of lines than the default ten, then ‘-n‘ option is used along with an integer telling the number of lines to be retrieved. For example, the following command will display first 5 lines from the file ‘/var/log/yum.log‘ file.

In fact, there is no need to use ‘-n‘ option. Just the hyphen and specify the integer without spaces to get the same result as the above command.

The head command can also display any desired number of bytes using ‘-c‘ option followed by the number of bytes to be displayed. For example, the following command will display the first 45 bytes of given file.

2. tail Command

The tail command allows you to display last ten lines of any text file. Similar to the head command above, tail command also support options  ‘n‘ number of lines and ‘n‘ number of characters.

The basic syntax of tail command is:

For example, the following command will print the last ten lines of a file called ‘access.log‘.

If more than one file is provided, tail will print the last ten lines of each file as shown below.

Similarly, you can also print the last few lines using the ‘-n‘ option as shown below.

You can also print the number of characters using ‘-c’ argument as shown below.

3. cat Command

The ‘cat‘ command is most widely used, universal tool. It copies standard input to standard output. The command supports scrolling, if text file doesn’t fit the current screen.

The basic syntax of cat command is:

The most frequent use of cat is to read the contents of files. All that is required to open a file for reading is to type cat followed by a space and the file name.

The cat command also used to concatenate number of files together.

It can be also used to create files as well. It is achieved by executing cat followed by the output redirection operator and the file name to be created.

We can have custom end maker for ‘cat’ command. Here it is implemented.

Never underestimate the power of  ‘cat’ command and can be useful for copying files.

Now what’s the opposite of cat? Yeah it’s ‘tac‘. ‘tac‘ is a command under Linux. It is better to show an example of ‘tac’ than to talk anything about it.

Create a text file with the names of all the month, such that one word appears on a line.

For more examples of cat command usage, refer to the 13 cat Command Usage

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.