Komparator — a comparing tool for KDE

[ Monday, 7 April 2008, michalrz ]

Komparator is an application, that can compare and synchronize the content of two (local or remote) folders. Contrary to popular belief this activity is popular among users of all platforms, but in Linux you have to use unfriendly console apps (such as diff) to do the job.

Dragonia Magazine

Komparator offers a simplified approach to this, as it is equipped with an interface similar to these known from popular file managers or FTP clients.

Komparator requires at least KDE 3.4 to be able to work correctly. The newest – 0.9 – version of Komparator can be downloaded from: its sourceforge page

Short description of the program

The interface is quite straightforward, however, it may be found a little bit chaotic, because the functions are organized in tabs, and not hidden somewhere in the menu. It is highly time-effective, but one really needs to get acquainted with this application to draw the profits from such a solution. It would be best to try Komparator in action on some test data at the very beginning.

komparator kde
Komparator — main window

There are three main tabs which define the search and program options, and three tabs featuring the lists of duplicates, newer and missing files.

The reference folder (the one that should remain unchanged), and the one we want to actualize, are set in the upper right corner by choosing the location for the right or the left column. There are also widgets used for saving and proceeding presets, of e.g. searching schemes, in the upper right corner.

The localizations can be local folders, or FTP and even SMB shares (which allows the application to be used for backup from either Windows or Linux workstations). To set the FTP localization, type:


into appropriate location field.

Komparator is able to compare the data by a variety of methods. Two files are defined as identical when not only their size, but also their MD5 sums equal. Furthermore the program is able to compare the files on binary level, however, this is the slowest solution, and it is off by default.

Unfortunately, it is required to download the files from the remote localization to compare two files correctly, which is time consuming if the bandwidth is too low.

A typical comparing process of 5 MB of data on the ftp to the local copy (searching of duplicates, missing files, and files with different modification date) lasts several minutes, but hardly more than the amount of time needed to download the data to the hard drive. The accuracy can be adjusted, so that Komparator does not check the MD5 sums, but the sizes only. It is recommended to turn on the ‘Komparator text color theme’ option in the ‘Settings’ tab of searching options. It enables the usage of more contrasting colours for marking the filenames.

Search results:

Used colours inform, whether the very file is a duplicate or a missing file and so on.

In the tab responsible for displaying the duplicates, all files which occur exactly two times, and have the same relative access path, are marked with black colour. Files which are duplicates, as far as MD5 sums and/or binary check is concerned, but which are located in different subfolders, are marked blue. When a filename is marked, the list of identical files appears. On this list the filename can be green, if it is a reference file, or blue if it is not.

All files, which appear only once, are called ‘missing files’. If in our local copy exists no such file, which means it could have been uploaded (for example on ftp) by someone else, it will be displayed on this list.

You can check which files were modified in the reference folder, while searching for ‘newer versions of files’. Newer versions will be displayed in black, whereas elder in blue. It happens, however, that such comparison does not work properly, if the dates of file creation and of modification are the same. This can happen on filesystems where only modification date is recorded, or when the file is newly uploaded and has not been changed since. Therefore, if two files are recognized as duplicates, the older one will be marked purple.

On the other hand, if the path and modification date are the same, but the files still differ, they will be marked red.

The screen is divided into two columns, one of which is the reference folder, in the missing and newer files view. While at it, you are able to move and delete the files – by moving them to trash or by deleting them permanently. You can also assign a filter, to the view to see only the files owned by a specified user, having a proper size and so on.

komparator kde
Komparator — search results

To sum up:

Komparator is a quite useful tool which is fast and stable. I would advise to exercise the operating skills on some test data, since the author’s understanding of the ‘duplicate’ word might differ from the one of the user.

Translated by Filip Pałuba, proof-read by Łukasz Sokół

Subscribe to RSS feed for this article!


fold this thread Jim  Thursday, 10 April 2008 o godz. 12:09 am #  Add karma Subtract karma  +1

Meld, a GTK program has been doing this for a long time… Even has three way compare. But glad to see another useful tool for the QT base.

(Comments wont nest below this level)
fold this thread Jens Frederik  Thursday, 10 April 2008 o godz. 7:49 am #  Add karma Subtract karma  --1

maybe I am wrong but it seems that rsync does this in a much clever way…

rsync -avz … … datzz all


(Comments wont nest below this level)
fold this thread Andy  Thursday, 10 April 2008 o godz. 10:44 am #  Add karma Subtract karma  +0

What about compare/synchronize folders/disks offline? Like take snapshot on one PC, store the list in a file/database, put that snapshot to another PC, and compare it with the local folders/disks…

Any program for that?

(Comments wont nest below this level)
fold this thread Stefano  Thursday, 10 April 2008 o godz. 8:47 pm #  Add karma Subtract karma  +0

to take and compare a snapshot you can use the md5deep suite (http://md5deep.sourceforge.net/), an MD5, SHA-1, SHA-256, Tiger, or Whirlpool files generator.


Stefano Spinucci

fold this thread cga  Thursday, 10 April 2008 o godz. 1:39 pm #  Add karma Subtract karma  +0

there’s also http://kdiff3.sourceforge.net/ since long time and it works greatly.


(Comments wont nest below this level)
fold this thread michuk  Thursday, 10 April 2008 o godz. 4:33 pm #  Add karma Subtract karma  +0

Komparator uses KDiff3.

fold this thread Mark Rijckenberg  Friday, 11 April 2008 o godz. 10:33 am #  Add karma Subtract karma  +1

“Krusader” can do the same thing and lot more. For me, it is a real swiss army knife for Linux. It is a file manager, ftp/scp/ssh client, directory synchronizer, etc… It can use of the following diff-frontends: Kompare, Kdiff3 and Xxdiff.

(Comments wont nest below this level)
fold this thread Jan  Friday, 11 April 2008 o godz. 1:37 pm #  Add karma Subtract karma  +0

Try Unison – works using rsync (including network syncing), much more faster and elegant solution:

(Comments wont nest below this level)
fold this thread facebook likes  Sunday, 1 June 2014 o godz. 12:05 am #  Add karma Subtract karma  +0

Wonderful goods from you, man. I have understand your stuff previous to and you’re just extremely fantastic.
I actually like what you have acquired here, certainly like what
you aare stating and the way in which you say it. You make it entertaining and you still
care for to keep it sensible. I cant waiit to read far more from you.This is actually a
great website.

(Comments wont nest below this level)
fold this thread free facebook likes  Monday, 23 June 2014 o godz. 4:54 am #  Add karma Subtract karma  +0

I don’t even know how I ended up here, but I thought this post was great.
I do not know who you are but definitely you are going to
a famous logger if you are not already ;) Cheers!

(Comments wont nest below this level)
Name (required)
E-mail (required - never shown publicly)

Adjust field size: shrink | enlarge)

You can use simple HTML in your comments. Some examples are as follows:
  • A hyperlink: <a href="polishlinux.org">GNU/Linux for everyone!</a>,
  • Strong text: <strong>Strong text</strong>,
  • Italic text: <em>italic text</em>,
  • Strike: <strike>strike</strike>,
  • Code: <code>printf("hello world");</code>,
  • Block quote: <blockquote>Block quote</blockquote>

About the Author

Michał Rzepka

Dragonia Magazine editor, proofreader, translator. KateOS user.

New AdTaily ads!

Are you a film buff?

film buffs community, movie recommendations and reviews

RSS: Comments

You can follow the comments to this article through a special channel RSS 2.0 .

Related articles: KDE

 more »

PolishLinux Top Content

Become our fan on Facebook!

PolishLinux.org on Facebook

Follow PolishLinux on Twitter!

Follow polishlinux on Twitter

Google Ads