Linux kullanarak iki metin dosyaları karşılaştırmak nasıl

Bu kılavuz, Linux'u iki dosyayı karşılaştırmak ve farklarını ekrana veya bir dosyaya vermek için nasıl kullanacağınızı gösterecektir.

Linux kullanarak dosyaları karşılaştırmak için herhangi bir özel yazılım yüklemeniz gerekmez, ancak bir terminal penceresinin nasıl açılacağını bilmeniz gerekir.

Bağlantılı kılavuzda gösterildiği gibi Linux kullanarak bir terminal penceresi açmak için birçok yol vardır. En basit CTRL, ALT ve T tuşlarına aynı anda basmaktır.

Karşılaştırılacak Dosyaların Oluşturulması

Bu kılavuzla birlikte takip edebilmek için "file1" adında bir dosya oluşturun ve aşağıdaki metni girin:

Bir duvarda duran 10 yeşil şişe

Bir duvarda duran 10 yeşil şişe

Bir yeşil şişe yanlışlıkla düşerse

Duvarda duran 9 yeşil şişe olurdu.

Aşağıdaki talimatları uygulayarak bir dosya oluşturabilirsiniz:

  1. Aşağıdaki komutu yazarak dosyayı açın: nano dosyası1
  2. Metni nano düzenleyiciye yaz
  3. Dosyayı kaydetmek için CTRL ve O tuşlarına basın
  4. Dosyadan çıkmak için CTRL ve X tuşlarına basın

Şimdi "file2" adında başka bir dosya oluşturun ve aşağıdaki metni girin:

Bir duvarda duran 10 yeşil şişe

1 yeşil şişe yanlışlıkla düşerse

Duvarda duran 9 yeşil şişe var.

Aşağıdaki talimatları uygulayarak bir dosya oluşturabilirsiniz:

  1. Aşağıdaki komutu yazarak dosyayı açın: nano file2
  2. Metni nano düzenleyiciye yaz
  3. Dosyayı kaydetmek için CTRL ve O tuşlarına basın
  4. Dosyadan çıkmak için CTRL ve X tuşlarına basın

Linux Kullanarak İki Dosya Nasıl Karşılaştırılır

Linux içinde kullanılan 2 dosya arasındaki farkları göstermek için kullanılan komutlara diff komutu denir.

Diff komutunun en basit şekli şöyledir:

diff dosya1 dosya2

Eğer dosyalar aynı ise o zaman bu komut kullanılırken çıktı olmaz, çünkü farklılıklar olduğu için çıktıyı aşağıdaki gibi görürsünüz:

2,4c2,3

Duvarda duran 10 yeşil şişe

...

> 1 yeşil şişe kazara düşerse

> Duvarda duran 9 yeşil şişe var

Başlangıçta, çıktı kafa karıştırıcı görünebilir, ancak terminolojiyi anladığınızda, oldukça mantıklıdır.

Kendi gözlerinizi kullanarak 2 dosya arasındaki farkların aşağıdaki gibi olduğunu görebilirsiniz:

Diff komutundan gelen çıktı, ilk dosyanın 2. ve 4. satırları ile ikinci dosyanın 2. ve 3. satırları arasında farklılıklar olduğunu gösterir.

Ardından, ilk dosyadan 2'den 4'e kadar olan satırları ve ardından ikinci dosyadaki 2 farklı satırı listeler.

Dosyalar Farklı Olduğunda Nasıl Gösterilir?

Dosyaların farklı olup olmadığını öğrenmek istediğinizde ve hangi satırların farklı olduğuyla ilgilenmiyorsanız aşağıdaki komutu çalıştırabilirsiniz:

diff -q dosya1 dosya2

Dosyalar farklıysa, aşağıdakiler görüntülenir:

Dosya1 ve dosya2 farklı

Dosyalar aynıysa, hiçbir şey görüntülenmez.

Dosyalar Aynı Olduğunda İleti Nasıl Gösterilir

Bir komutu çalıştırdığınızda, doğru çalıştığını bilmek istersiniz, böylece dosyaların aynı mı yoksa farklı mı olduğuna bakılmaksızın, diff komutunu çalıştırdığınızda görüntülenecek bir mesaj istersiniz.

Bu gereksinimi diff komutunu kullanarak elde etmek için aşağıdaki komutu kullanabilirsiniz:

diff -s dosya1 dosya2

Şimdi dosyalar aynı ise, aşağıdaki iletiyi alırsınız:

Dosya1 ve dosya2 aynıdır

Farkları Yan Yana Nasıl Üretiriz

Çok fazla farklılıklar varsa, iki dosya arasında farklılıkların gerçekte ne olduğu konusunda çok hızlı bir şekilde kafa karıştırıcı olabilir.

Fark komutunun çıktısını, sonuçların yan yana gösterilebilmesi için değiştirebilirsiniz. Bunu yapmak için aşağıdaki komutu çalıştırın:

diff -y dosya1 dosya2

Dosya için çıktı, | iki çizgi arasında bir fark göstermek için sembol, kaldırılmış bir satırı göstermek için bir işareti.

İlginç bir şekilde, bizim gösteri dosyalarını kullanarak komutu çalıştırırsanız, tüm satırlar silinmiş olarak gösterilecek olan dosya 2'nin son satırı dışında farklı görünecektir.

Sütun Genişliklerini Kısıtlama

İki dosyayı yan yana karşılaştırırken, dosyaların çok sayıda sütun metni varsa okunması zor olabilir.

Bir dizi sütunu kısıtlamak için aşağıdaki komutu kullanın:

diff --width = 5 dosya dosyası2

Dosyaları Karşılaştırırken Vaka Farklılıkları Nasıl Yoksayılır

İki dosyayı karşılaştırmak istiyorsanız, ancak iki dosya arasında harflerin aynı olup olmadığını umursamıyorsanız, aşağıdaki komutu kullanabilirsiniz:

diff -i dosya1 dosya2

Bir Satırın Sonundaki Beyaz Boşlukları Nasıl Yoksayılır

Dosyaları karşılaştırırken farklılıklar fark ettiğinizi fark ederseniz ve satırların sonunda beyaz boşluktan kaynaklanan farklılıklara yol açıyorsanız, aşağıdaki komutu çalıştırarak bunları değişiklik olarak gösterebilirsiniz:

diff -Z dosya1 dosya2

İki Dosya Arasında Tüm Beyaz Uzay Farklılıkları Nasıl Yoksayılır

Yalnızca bir dosyadaki metinde ilgileniyorsanız ve bir diğerinden daha fazla alan olup olmadığından emin değilseniz, aşağıdaki komutu kullanabilirsiniz:

diff -w dosya1 dosya2

İki Dosyayı Karşılaştırırken Boş Satırları Yoksayma

Bir dosyada fazladan boş satırlar olabileceğinden emin değilseniz, aşağıdaki komutu kullanarak dosyaları karşılaştırabilirsiniz:

diff -B dosya1 dosya2

özet

Daha fazla bilgiyi diff komutunun kılavuzunu okuyarak bulabilirsiniz.

erkek fark

Diff komutu, sadece 2 dosya arasındaki farkları göstermek için en basit biçiminde kullanılabilir, ancak bu kılavuzda Linux yaması komutunda gösterildiği gibi bir yamalama stratejisinin parçası olarak bir diff dosyası oluşturmak için de kullanabilirsiniz.

Dosyaları karşılaştırmak için kullanabileceğiniz başka bir komut , bu kılavuzda gösterildiği gibi cmp komutudur . Bu, bayt tarafından bayt dosyalarını karşılaştırır.