Linux command file contents

Terminal Basics #5: View the File Contents in Linux

In this chapter of the Terminal Basics series, you’ll learn about viewing the contents of files in the Linux command line.

You learned to create new files in the previous chapter of the Terminal Basics series. In this chapter, you’ll learn to read the files. I’ll be discussing the most common Linux commands to display the contents of a text file. Before you do that, let’s create our ‘playground’ with sample files. Let’s create a directory first and switch to it.

mkdir display_files && cd display_files

And then, create a new file named columbo.txt with the following text (use the cat command with >> as discussed in the previous chapter):

Prescription: Murder Ransom for a Dead Man Murder by the Book Death Lends a Hand Dead Weight Suitable for Framing Lady in Waiting Short Fuse Blueprint for Murder

You don’t have to type it all by yourself. You can copy-paste in the terminal using Ctrl+Shift+V. Most terminals support this shortcut. With things set, let’s see various ways of viewing files in the Linux terminal.

Use cat command to display file content

The cat command is the most popular method to view files in Linux. It is dead simple to use. Just give it the file name and it displays the file content on the screen. Things cannot go simpler than this.

Using the cat command to view files in Linux

This is the output it shows:

Optional challenge: Use the cat or echo command with >> redirection to add a new line with «Etude in Black» text to the columbo.txt file. Refer to the previous chapter if you need help.

Using the less command to read large text files

The cat command is so simple. In fact, it is too simple. And simple doesn’t work in complicated scenarios. Try using the cat command to view the content of the services file.

This services is a huge file with hundreds of lines. When you use cat, it floods the entire screen with the entire text. This is not ideal. Can you read the first line of the file? Yes, you can but you have to scroll all the way up. If the file has thousands of lines, you won’t even be able to scroll back to the first few lines. This is where the less command comes into the picture. It lets you read the contents of a file in a page-by-page manner. You exit the viewing mode and your terminal screen is clean as ever. Use the less command to read the services file:

Now you are in a different viewing mode. You can use the arrow keys to move line by line. You can also use the Page Up and Page Down keys to move up and down by pages. You can even search for certain text using /search_term. When you are done reading the file, press Q key to exit the less view and go back to the normal terminal viewing. This table will help you use less:

Keys Action
Up arrow Move one line up
Down arrow Move one line down
Space or PgDn Move one page down
b or PgUp Move one page up
g Move to the beginning of the file
G Move to the end of the file
ng Move to the nth line
/pattern Search for pattern and use n to move to next match
q Exit less
Читайте также:  Как перезапустить интерфейс linux

From viewing files in real time to bookmarking text, less can do a lot more. Read this to learn more about it.

Head and tail to show part of text files

If you only want to see certain parts of the text file in cat-styled display, use the head and tail commands. By default, the head command displays the first 10 lines of a file.

Practice examples

#create or clear the content of the file echo -n > sample #put content to the file for i in do echo "This is the line $i" >> sample done

Create a new file named script.sh and copy-paste the above script content into it. Now run the script like this to generate your sample file:

Now, you have got a file named sample that contains lines like «This is the line number N» for every 70 lines.

Let’s take it to the next level. You can combine them both to show specific lines of a file. For example, to show lines from 35 to 40, use it like this:

head -n 40 filename | tail -n +35

Show a range of lines in Linux

Here:

  • head -n 40 filename will display the first 40 lines of the file.
  • tail -n +35 will display the lines from the 35th line to the end of the output from the head command. Yeah! Mind the + sign that changes the normal behavior of the tail command.

You can also combine them to show only a particular line. Let’s say you want to display the 55th line; combine head and tail like this.

head -n 55 filename | tail -n 1

Show only a particular line in Linux command line

  • head -n 55 filename will display the first 55 lines of the file.
  • tail -n 1 will display the last line of the output from the head command, which will be the 55th line of the file.

Test your knowledge

Time for you to exercise your grey cells and practice what you learned in this chapter.

  • Use the same sample file and display lines from 63 and 68.
  • Now display the lines from 67 to 70.
  • How about displaying the first line only?
  • What do you see in the /etc/passwd file? Display its content.

That’s it for this chapter. Next, you’ll learn about removing files and folders in the command line. Stay tuned.

Источник

6 Ways to View Linux File Content

Invicti Web Application Security Scanner – the only solution that delivers automatic verification of vulnerabilities with Proof-Based Scanning™.

One of the most important ways you can make use of your Linux PC is through files.

Almost every file that you directly work on in the Linux terminal can be manipulated as a text file. This includes configuration files, log files about various services and processes in the system, and script files that come bundled with the Linux Distribution of your choice or which you write yourself.

Knowing how to quickly view the content of these files in the Linux terminal is an invaluable skill that not only saves you time but also helps you learn more about the system. This tutorial will show you how to view these kinds of files in the Linux terminal.

Читайте также:  Посмотреть запущенные демоны linux

cat

The cat command is a simple and extremely useful command for viewing file contents on Linux.

You can use the cat command to quickly print file content to the standard output in the terminal or alternatively concatenate the output.

The syntax for the cat command is as follows:

For example, if you have a file called simple-list.txt , which contains a list of some items, you can view the contents of this file by using the command

$ cat simple-list.txt bananas strawberries grapes apples watermelons oranges blueberries lemons peaches avocados pineapples cherries cantaloupe raspberries pears limes blackberries clementine mangoes plums 

You can also list multiple files at the same time to get the output of all files in the terminal at once, as shown below:

$ cat testfile1.txt testfile2.txt these are the contents of testfilel.txt. and this is the end of testfilel.txt these are the contents of testfile2.txt. and this is the end of testfile2.txt

nl

If you want to be able to see the line number for each line in a file, the nl command does exactly that. You can use this command in the same way as the cat command, and the only difference is that nl has line numbers enabled by default.

Using the cat command, you can get the same result with the -e option. Here is an example output of the same simple-list.txt file output with nl

$ nl simple-list.txt 1 bananas 2 strawberries 3 grapes 4 apples 5 watermelons 6 oranges 7 blueberries 8 lemons 9 peaches 10 avocados 11 pineapples 12 cherries 13 cantaloupe 14 raspberries 15 pears 16 limes 17 blackberries 18 clementine 19 mangoes 20 plums 

The line numbers can be changed to be left justified by using the -nln option. There are other options as well you can use with the nl command, listed under man nl

more

So far, you have needed to scroll through the output using your mouse scroll wheel or Shift+Page-up and Shift+Page-down buttons on the keyboard.

However, more command provides a much easier way to view longer files that do not fit completely within the terminal window.

The same simple-list.txt file is shown when viewed through more commands:

Navigation in the viewing window of more commands can be either line by line or page by page. You can use Enter key to navigate by one line at a time or the Space key to navigate by one page at a time.

The B key is used to go back to the previous page. More command also tells you when you reach the end of the file as well, as shown below:

You can quit the viewing window of more commands at any time by pressing q, which returns you to the terminal screen. In this way, more commands can be used to view long config or log files without breaking the flow of the terminal.

less

Less is a more modern take on more command. Back when fewer commands were introduced in the Linux ecosystem, most commands did not support scrolling back up.

In addition to letting users scroll up and down, less command also supports horizontal scrolling, supports better handling for binary files, and can perform a search through text.

Let’s look at our simple-list.txt file through less:

You can use arrow keys on the keyboard to navigate, in addition to the navigation keys for more commands. While you are in the viewing window of less, you can use /word to search through the file contents for word.

Читайте также:  Linux настройка сети dhcp dns

This is shown in the screenshot below where the user searches for apple in the file contents:

Less command also supports more advanced features such as being able to view file contents at the first occurrence of a specific word. To do this, the command syntax is as follows:

$ less +/target-word /path-to-file

For example, to open the apples.txt file at the first occurrence of the word cultivar, the following command would be used:

If you just want to quickly view the first ten lines of a file, you can do that through

The head command as shown below:

$ head simple-list.txt bananas strawberries grapes apples watermelons oranges blueberries lemons peaches avocados

By default, only the first ten lines are shown in the terminal, but you can change the number of lines displayed by using the -n option, as shown below:

$ head -n 5 simple-list.txt bananas strawberries grapes apples watermelons

Similarly, the -c option can be used to print a specific number of bytes from the file to the terminal.

tail

The tail command works like the head command, with the only major difference being that it shows the last ten lines of the file instead of the first ten lines.

$ tail simple-list.txt cherries cantaloupe raspberries pears limes blackberries clementine mangoes plums tangerines 
$ tail -n 5 simple-list.txt blackberries clementine mangoes plums tangerines

In addition, both head and tail commands can be used with other file viewing commands shown in the tutorial to produce better output for users.

For example, the nl command can be used to first show the file with line numbers. Then the result can be piped to less to view the last three lines of the file, as shown below:

$ nl simple-list.txt | tail -n 3 19 mangoes 20 plums 21 tangerines 

Frequently asked questions about viewing Linux files

You can check the type of a file through the file command, the syntax of which is as follows:

How can I view the contents of a really big log file, for example, an apache or Nginx log file, to find a specific line?

You can combine multiple commands through piping to not only search through big log files but to display the search result in a well-organized output.

For example, using grep with nl and tail , you can find out when was the last few times a specific file was requested on your web server, as shown below:

$ nl /var/log/apache/mywebsite.log | grep target-file.jpg | tail -n 5

The above command will show the last file times target-file.jpg was requested on your web server.

The space key is used to scroll down a full page with more and fewer commands.

To scroll down line-by-line in less, use the Enter key on the keyboard.

To scroll back up a page, use the b key.

How can I search for a specific term or word in the viewing window of more or less command while I am reading?

To search for a specific word in the contents of the file you are currently viewing in more or less, use the syntax /word-to-search.

If I want to open an image or rich text document file through the terminal, what command can I use?

You can use the general command xdg-view , or any variant of it for the specific distribution you have installed, for example, gnome-view or kde-view , to open a rich text or image file.

This will open the file in the default application for the target file type.

Источник

Оцените статью
Adblock
detector