Displaying Files Side by Side in Linux


Introduction

Working with files on Linux can often involve comparing or analyzing multiple files at once. A useful way to do this is to view the files side by side in the terminal, allowing for easy comparison and analysis. In this article, we'll explore various ways to view files side-by-side on Linux, including using the diff and sdiff commands, as well as using the text editors vim and emacs.

Using the diff command

The diff command is a standard Linux utility that compares two files and displays the differences between them. It can be used to view files side by side using the “-y” or “--side-by-side” flag.

To use the diff command, simply enter the command followed by the names of the two files you want to compare, like this −

$ diff file1 file2
4,5c4,5
< This is the fourth line in file
<  This is the fifth line in file
---
> This is the fourth line in filex
> This is the fifth line in filex

To view files side by side, use the “-y” flag

The output will show the differences between the two files, with each line in the file displayed side by side. Any different rows will be highlighted in red.

Here's an example of using the diff command to compare two files, “file1” and “file2” −

$ diff -y  file1 file2
This is the first line in file      This is the first line in file
This is the second line in file     This is the second line in file
This is the third line in file      This is the third line in file
This is the fourth line in file     | This is the fourth line in filex
This is the fifth line in file      | This is the fifth line in filex
This is the sixth line in file      This is the sixth line in file

In this example, we can see that the fourth and fifth lines are different in the two files. The diff command highlighted these differences in red.

Using the sdiff command

The sdiff command is similar to the diff command, but merges the differences between the two files into a single output. To use the sdiff command, enter the command followed by the names of the two files you want to compare, like this −

$ sdiff file1 file2

The output will show the differences between the two files, with each line in the file displayed side by side. Any different lines will be highlighted in red and marked with a symbol indicating which file they come from.

Here's an example of using the sdiff command to compare two files, file1 and file2 −

$ sdiff file1 file
This is the first line in file       This is the first line in file
This is the second line in file      This is the second line in file
This is the third line in file       This is the third line in file
This is the fourth line in file      | This is the fourth line in filex
This is the fifth line in file       | This is the fifth line in filex
This is the sixth line in file       This is the sixth line in file

In this example, we can see that the fourth and fifth lines are different in the two files. The sdiff command has highlighted these differences in red and marked them with a symbol indicating which file they come from.

Using the vim text editor

The vim text editor is a popular and powerful tool for working with files on Linux. It can be used to view two files side by side using the “-o” or “-O” flag. To view two files side by side in vim, enter the command followed by the names of the two files, like so −

$ vim -o file1 file2

This will open the two files in a single window and the files will appear side by side. You can navigate through files using “Ctrl+w” commands. Here is an example of using vim to view two files, file1 and file2, side by side in a single window.

$ vim -O file1 file2

This will open the two files in a single window and the files will appear side by side. You can see the differences between the two files using the :diffupdate command, which will highlight any differences in red.

Using the emacs text editor

Like vim, the emacs text editor is a powerful tool for working with files on Linux. It can also be used to view two files side by side using the “-nw” flag. To view two files side by side in emacs, enter the command followed by the names of the two files, like so −

$ emacs -nw file1 file2

This will open the two files in separate windows within emacs. You can navigate between windows using “Ctrl+x” or “.” Here's an example of using emacs to display two files, “file1” and “file2”, side by side:

$ emacs -nw file1 file2

This will open the two files in separate windows within emacs. You can view the differences between the two files using the M-x ediff command, which will open a third window showing the differences between the two files.

Conclusion

Showing files side by side in Linux can be a useful tool for comparing and analyzing multiple files. The sdiff and diff commands, as well as the vim and emacs text editors, provide ways to view files side by side in the terminal. Whether you need to compare simple text files or more complex data, there is a method available for viewing files side by side in Linux.

Updated on: 25-Jan-2023

14K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements