Linux'taki En İyi 10 Dosya Karşılaştırma ve Fark (Fark) Aracı


Program dosyaları veya normal metin dosyaları yazarken programcılar ve yazarlar bazen iki dosya veya aynı dosyanın iki versiyonu arasındaki farkı bilmek isterler.

Linux'ta iki bilgisayar dosyasını karşılaştırdığınızda, içerikleri arasındaki farka diff adı verilir. Bu açıklama, iyi bilinen Unix komut satırı dosya karşılaştırma aracı olan diff'in çıktısına yapılan bir referanstan doğmuştur.

Linux'ta kullanabileceğiniz çeşitli dosya karşılaştırma araçları vardır ve bu incelemede, kod veya diğer metin dosyalarını yazarken yararlanabileceğiniz en iyi terminal tabanlı ve GUI fark araçlarından bazılarına bakacağız.

1. fark Komutu

Size iki bilgisayar dosyası arasındaki farkı gösteren orijinal Unix komut satırı aracıyla başlamayı seviyorum. Diff basit ve kullanımı kolaydır; dosyaları satır satır karşılaştıran ve aralarındaki farkı ortaya koyan çoğu Linux dağıtımında önceden yüklenmiş olarak gelir.

İki dosyayı karşılaştırmak ve farklılıkları görüntülemek için.

diff file1.txt file2.txt

Kolayca kullanmak için diff'in manuel girişine göz atabilirsiniz.

man diff

diff aracının işlevselliğini artıran bazı sarmalayıcılar vardır ve bunlar şunları içerir:

colordiff Komutu

Colordiff, diff ile aynı çıktıyı üreten ancak renk ve sözdizimi vurgulaması içeren bir Perl betiğidir. Kişiselleştirilebilir renk şemalarına sahiptir.

Gösterilen şekilde yum, dnf ve apt-get veya apt adı verilen varsayılan paket yöneticisi araçlarını kullanarak Colordiff'i Linux sistemlerinize yükleyebilirsiniz.

sudo apt install colordiff         [On Debian, Ubuntu and Mint]
sudo yum install colordiff         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/colordiff  [On Gentoo Linux]
sudo apk add colordiff             [On Alpine Linux]
sudo pacman -S colordiff           [On Arch Linux]
sudo zypper install colordiff      [On OpenSUSE]    

Dizinleri yinelemeli olarak karşılaştırmak için.

colordiff file1.txt file2.txt

Gösterildiği gibi colordiff için manuel girişi kontrol edebilirsiniz.

man colordiff

wdiff Komutu

wdiff yardımcı programı, dosyaları kelime kelime karşılaştırmak için kullanılan diff komutuna yönelik bir ön uçtur. Bu program, değiştirilen kelimeler ve paragrafların yeniden doldurulduğu iki metni karşılaştırırken çok kullanışlıdır.

Linux sistemlerinize wdiff'i yüklemek için şunu çalıştırın:

sudo apt install wdiff         [On Debian, Ubuntu and Mint]
sudo yum install wdiff         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/wdiff  [On Gentoo Linux]
sudo apk add wdiff             [On Alpine Linux]
sudo pacman -S wdiff           [On Arch Linux]
sudo zypper install wdiff      [On OpenSUSE]    

İki dosyayı yan yana görüntülemek ve kelime düzeyindeki farkları vurgulamak için.

wdiff file1.txt file2.txt

Linux'ta nasıl kullanılacağını öğrenmek için wdiff kılavuzunu kullanın.

man wdiff

2. Vimdiff Komutanlığı

Vimdiff, diff yardımcı programına kıyasla daha gelişmiş bir şekilde çalışır; bu, kullanıcıya bir dosyanın dört adede kadar sürümünü düzenleyerek aralarındaki farkları göstermesine olanak tanır. Çalıştırdığınızda Vimdiff, Vim metin düzenleyicisini kullanarak iki, üç veya dört dosyayı açar.

vimdiff'i kullanmak için sisteminizde Vim'in yüklü olması gerekir, ancak yüklü değilse paket yöneticinizi kullanarak yükleyebilirsiniz.

sudo apt install vim         [On Debian, Ubuntu and Mint]
sudo yum install vim         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/vim  [On Gentoo Linux]
sudo apk add vim             [On Alpine Linux]
sudo pacman -S vim           [On Arch Linux]
sudo zypper install vim      [On OpenSUSE]    

vimdiff kullanarak iki dosyayı karşılaştırmak için aşağıdaki komutu uygularsınız.

vimdiff file1.txt file2.txt

Üç dosyayı karşılaştırmak için vimdiff'i de kullanabilirsiniz.

vimdiff file1.txt file2.txt file3.txt

Daha detaylı bilgi ve kullanım seçenekleri için kılavuz sayfasına çalıştırarak ulaşabilirsiniz.

man vimdiff

3. sdiff

sdiff komutu, iki dosyayı yan yana karşılaştırmak ve aralarındaki farkları vurgulamak için kullanılır. İki dosyanın içeriğini ayrı sütunlarda görüntüler; eklenen satırlar ">" önekiyle, silinen satırlar "<" önekiyle ve ortak satırlar herhangi bir önek olmadan görüntülenir. .

sdiff komutu genellikle çoğu Linux dağıtımının standart kurulumuyla birlikte gelir. Ancak yüklü değilse paket yöneticinizi kullanarak yükleyebilirsiniz.

sudo apt install diffutils         [On Debian, Ubuntu and Mint]
sudo yum install diffutils         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/diffutils  [On Gentoo Linux]
sudo apk add diffutils             [On Alpine Linux]
sudo pacman -S diffutils           [On Arch Linux]
sudo zypper install diffutils      [On OpenSUSE]    

İki dosyayı karşılaştırmak ve farklılıkları yan yana görüntülemek için.

sdiff file1.txt file2.txt

Eski tarz diff araçlarına baktıktan sonra, hemen Linux'ta bulunan bazı GUI fark araçlarına geçelim.

4. Karşılaştırma

Karşılaştır, kullanıcıların dosyalar arasındaki farkları karşılaştırıp görüntülemesine ve ayrıca bunları birleştirmesine olanak tanıyan grafiksel bir fark ve birleştirme aracıdır.

Linux dağıtımlarına Kompare kurmak için sisteminize özel paket yöneticisini kullanabilirsiniz.

sudo apt install kompare         [On Debian, Ubuntu and Mint]
sudo yum install kompare         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/kompare  [On Gentoo Linux]
sudo apk add kompare             [On Alpine Linux]
sudo pacman -S kompare           [On Arch Linux]
sudo zypper install kompare      [On OpenSUSE]    

Özelliklerinden bazıları şunlardır:

  • Çoklu fark formatlarını destekler
  • Dizinlerin karşılaştırılmasını destekler
  • Fark dosyalarının okunmasını destekler
  • Özelleştirilebilir arayüz
  • Kaynak dosyalara yama oluşturma ve uygulama

5. Farklı Birleştirme

DiffMerge, dosyaları karşılaştırmak ve birleştirmek için platformlar arası bir GUI uygulamasıdır. İki işlevsellik motoruna sahiptir: iki dosya arasındaki farkı gösteren ve satır içi vurgulamayı ve düzenlemeyi destekleyen Diff motoru ve aradaki değiştirilen satırların çıktısını veren Birleştirme motoru. üç dosya.

Aşağıdaki özelliklere sahiptir:

  • Dizin karşılaştırmasını destekler
  • Dosya tarayıcı entegrasyonu
  • Son derece yapılandırılabilir

6. Meld – Fark Aracı

Meld, kullanıcıların dosyaları, dizinleri ve sürüm kontrollü programları karşılaştırmasını sağlayan hafif bir GUI fark ve birleştirme aracıdır. Geliştiriciler için özel olarak oluşturulmuş olup aşağıdaki özelliklerle birlikte gelir:

  • Dosya ve dizinlerin iki yönlü ve üç yönlü karşılaştırılması
  • Kullanıcı daha fazla kelime yazdıkça dosya karşılaştırmasının güncellenmesi
  • Otomatik birleştirme modunu ve değiştirilen bloklardaki eylemleri kullanarak birleştirmeleri kolaylaştırır
  • Görselleştirmeleri kullanarak kolay karşılaştırmalar
  • Git, Mercurial, Subversion, Bazaar ve çok daha fazlasını destekler

Meld'i Linux'a kurmak için, paket yöneticinizi kullanarak onu resmi depolardan kurabilirsiniz.

sudo apt install meld         [On Debian, Ubuntu and Mint]
sudo yum install meld         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/meld  [On Gentoo Linux]
sudo apk add meld             [On Alpine Linux]
sudo pacman -S meld           [On Arch Linux]
sudo zypper install meld      [On OpenSUSE]    

7. Dağıtma – GUI Fark Aracı

Diffuse, Linux'ta kullanabileceğiniz başka bir popüler, ücretsiz, küçük ve basit GUI fark ve birleştirme aracıdır. Python'da yazılmış olup iki ana işlevsellik sunar: dosya karşılaştırma ve sürüm kontrolü, dosya düzenlemeye ve dosyaları birleştirmeye izin verir ve ayrıca dosyalar arasındaki farkın çıktısını alır.

Linux'ta Diffuse'u kurmak için paket yöneticinizi gösterildiği gibi kullanabilirsiniz.

sudo apt install diffuse         [On Debian, Ubuntu and Mint]
sudo yum install diffuse         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/diffuse  [On Gentoo Linux]
sudo apk add diffuse             [On Alpine Linux]
sudo pacman -S diffuse           [On Arch Linux]
sudo zypper install diffuse      [On OpenSUSE]    

Bir karşılaştırma özetini görüntüleyebilir, fare işaretçisini kullanarak dosyalardaki metin satırlarını seçebilir, bitişik dosyalardaki satırları eşleştirebilir ve farklı dosyaları düzenleyebilirsiniz.

Diğer özellikler şunları içerir:

  • Sözdizimi vurgulama
  • Kolay gezinme için klavye kısayolları
  • Sınırsız geri almayı destekler
  • Unicode desteği
  • Git, CVS, Darcs, Mercurial, RCS, Subversion, SVK ve Monotone'u destekler

8. XXdiff – Fark ve Birleştirme Aracı

XXdiff, Linux, Solaris, HP/UX, IRIX ve DEC Tru64 gibi Unix benzeri işletim sistemlerinde çalışan ücretsiz, güçlü bir dosya ve dizin karşılaştırıcı ve birleştirme aracıdır. XXdiff'in sınırlamalarından biri, Unicode dosyalarını desteklememesi ve diff dosyalarının satır içi düzenlenmesidir.

Aşağıdaki özellik listesine sahiptir:

  • İki, üç dosya veya iki dizinin sığ ve özyinelemeli karşılaştırması
  • Yatay fark vurgulama
  • Dosyaların etkileşimli birleştirilmesi ve ortaya çıkan çıktının kaydedilmesi
  • Birleştirme incelemelerini/polisi destekler
  • GNU diff, SIG diff, Cleareddiff ve çok daha fazlası gibi harici fark araçlarını destekler
  • Komut dosyaları kullanılarak genişletilebilir
  • Kaynak dosyaları ve diğer birçok küçük özellik kullanılarak tamamen özelleştirilebilir

9. KDiff3 – – Fark ve Birleştirme Aracı

KDiff3, Linux ve Mac OS X, Windows da dahil olmak üzere tüm Unix benzeri platformlarda çalışan, KDevelop'tan yapılmış başka bir harika, platformlar arası fark ve birleştirme aracıdır.

KDiff3'ü Linux'a kurmak için paket yöneticinizi gösterildiği gibi kullanabilirsiniz.

sudo apt install kdiff3         [On Debian, Ubuntu and Mint]
sudo yum install kdiff3         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/kdiff3  [On Gentoo Linux]
sudo apk add kdiff3             [On Alpine Linux]
sudo pacman -S kdiff3           [On Arch Linux]
sudo zypper install kdiff3      [On OpenSUSE]    

İki ila üç dosya veya dizini karşılaştırabilir veya birleştirebilir ve aşağıdaki önemli özelliklere sahiptir:

  • Farklılıkları satır satır ve karakter karakter belirtir
  • Otomatik birleştirmeyi destekler
  • Birleştirme çakışmalarıyla başa çıkmak için yerleşik düzenleyici
  • Unicode, UTF-8 ve diğer birçok codec bileşenini destekler
  • Farklılıkların yazdırılmasına izin verir
  • Windows Gezgini entegrasyon desteği
  • Ayrıca bayt sırası işareti "BOM" aracılığıyla otomatik algılamayı da destekler
  • Çizgilerin manuel hizalanmasını destekler
  • Sezgisel GUI ve çok daha fazlası

10.TkDiff

TkDiff ayrıca Unix diff aracı için platformlar arası, kullanımı kolay bir GUI sarmalayıcıdır ve iki giriş dosyası arasındaki farkların yan yana görünümünü sağlar. Linux, Windows ve Mac OS X'te çalışabilir.

Ek olarak, farklı yer imleri, kolay ve hızlı gezinme için farklılıkların grafiksel bir haritası ve çok daha fazlası dahil olmak üzere başka heyecan verici özelliklere de sahiptir.

TkDiff'i Linux'a kurmak için paket yöneticinizi gösterildiği gibi kullanabilirsiniz.

sudo apt install tkdiff         [On Debian, Ubuntu and Mint]
sudo yum install tkdiff         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/tkdiff  [On Gentoo Linux]
sudo apk add tkdiff             [On Alpine Linux]
sudo pacman -S tkdiff           [On Arch Linux]
sudo zypper install tkdiff      [On OpenSUSE]    
Çözüm

En iyi dosya ve dizin karşılaştırıcı ve birleştirme araçlarından bazılarının bu incelemesini okuduktan sonra muhtemelen bunlardan bazılarını denemek istersiniz.

Bunlar Linux'ta bulabileceğiniz tek fark araçları olmayabilir, ancak en iyi özelliklerden bazılarını sundukları biliniyor. Ayrıca test ettiğiniz ve hak ettiğini düşündüğünüz diğer fark araçlarını da bize bildirmek isteyebilirsiniz. en iyileri arasında anılabilir.