- What is the shell command to display contents of a file?
- You must log in to answer this question.
- Linked
- Related
- Hot Network Questions
- Subscribe to RSS
- 6 Ways to View Linux File Content
- cat
- nl
- more
- less
- head
- tail
- Frequently asked questions about viewing Linux files
- View the Contents of a File in Linux Command Line
- View Contents of File Using Cat Command
- View File Contents By Line Numbers
- View File Contents Using More or Less Commands
- View File Contents Using head or tail Commands
What is the shell command to display contents of a file?
For viewing HTML files you can also use lynx , links , elinks or w3m which are text-mode browsers. They can also be used to view .txt files.
file : Display the type of file cat : Display the content of the file and outputs it on stdout.
You can use vi, emacs command to edit the file in Unix environment. If you do not have expertise in using vi/emacs you might find it little difficult to edit the file.
If you have X11 enabled, You can use a number of Linux editors like gvim, kate, kwrite, kdevelop etc.
Kwrite is my personal favorite in Linux.
Or, less or more . See the man pages for more information. 🙂
cat Works fine with txt or html. (or less or more if you want tosee it page by page) or any text ediotr. (vi, emcas, gedit. ).
Also know that if it’s a binary file it’s may contain control char that will do some displeasing things with your terminal (like changing charset). If that happen use reset to put it back in sane state.
You can also use file on file before displaying it’s content, the system will guess it’s type (based on content not filename name) and show it to you.
You must log in to answer this question.
Linked
Related
Hot Network Questions
Subscribe to RSS
To subscribe to this RSS feed, copy and paste this URL into your RSS reader.
Site design / logo © 2023 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2023.7.14.43533
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.
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.
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.
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:
head
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.
View the Contents of a File in Linux Command Line
The usual way to view the contents of a file is to simply open it in a text editor. However, for more quick viewing and in fact, also for automating in a shell script, the method of using a text editor does not suit.
There are many commands in Linux to solve this problem: to display the file contents on the command line.
Let us take a look at a few such commands.
View Contents of File Using Cat Command
A cat command is the most commonly used command to view the contents of a file. The syntax to use cat is quite simple, as shown below:
View File Contents By Line Numbers
The nl is another command in Linux which displays the contents of a file. It stands for ‘Number lines’, as the output displayed by this command is numbered lines.
The nl command has even more options to format the output numbering in various ways. However, to simply display the contents, it can be used as discussed above.
View File Contents Using More or Less Commands
The ‘more’ or ‘less’ are pretty much the same command in Linux. They display a file on the terminal one page at a time and are thus very useful in displaying large files.
For smaller files, ‘more’ works the same as the cat command, whereas ‘less’ works the same for both larger and smaller files.
The output of ‘less’ is displayed on an overlay screen, and can be exited by pressing ‘q’ . Thus the output is not permanently written to the screen.
View File Contents Using head or tail Commands
The head command is used to print the first 10 lines of a file, instead of printing the whole file. Similar tail prints the last 10 lines of a file.
For example, the following respectively print the first and last 10 lines of the huge logfile ‘/var/log/syslog‘.
If you need to print a different number of top or bottom lines of the file, use the argument ‘-n’ .
$ head -n5 /var/log/syslog $ tail -n5 /var/log/syslog
Conclusion
Today we learned about various ways to display the contents of a file in the Linux command line. If you know any other cool way to display file contents in the command line, do share it with everyone in the comments below!