Linux Kullanarak İki Metin Dosyasını Karşılaştırma
Bilinmesi gereken
- Karşılaştırmak için şunu çalıştırın: fark dosyası1 dosya2
- Şunlarla nasıl farklı olduklarını gösterin: diff -q dosya1 dosya2
- Aşağıdakilerle nasıl aynı olduklarını gösterin: diff -s dosya1 dosya2
Bu makale, iki dosyayı karşılaştırmak ve dosyalar arasındaki farkları ekrana veya bir dosyaya çıkarmak için Linux'un nasıl kullanılacağını açıklar. Linux kullanarak dosyaları karşılaştırmak için özel bir yazılım yüklemeyeceksiniz, ancak nasıl yapılacağını bilmeniz gerekiyor. bir terminal penceresi aç.
Karşılaştırılacak Dosyaları Oluşturun
Bu kılavuzu takip etmek istiyorsanız, benzer ancak farklı metinler içeren iki metin dosyası oluşturun.
İlk Dosyayı Oluşturun
adlı bir dosya oluşturun dosya1 ve ardından 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
Bu dosyayı oluşturmak için şu talimatları izleyin:
-
Aşağıdaki komutu yazarak dosyayı açın:
nano dosya1
Linux'ta bir terminal penceresi açmanın en hızlı yolu, CTRL+ALT+T tuşları aynı anda.
-
Metni içine yazın nano düzenleyici.
basmak CTRL+O dosyayı kaydetmek için.
basmak CTRL+X dosyadan çıkmak için
İkinci Dosyayı Oluşturun
Ardından, adlı başka bir dosya oluşturun dosya2 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 olurdu
Bu dosyayı oluşturmak için şu talimatları izleyin:
-
Aşağıdaki komutu yazarak dosyayı açın:
nano dosya2
-
Metni nano düzenleyiciye yazın.
basmak CTRL+O dosyayı kaydetmek için.
basmak CTRL+X dosyadan çıkmak için
Linux Kullanarak İki Dosya Nasıl Karşılaştırılır
Linux'ta iki dosya arasındaki farkları göstermek için kullanılan komuta diff komutu denir.
diff komutunun en basit şekli aşağıdaki gibidir:
fark dosyası1 dosya2
Dosyalar aynıysa, bu komutu kullanırken çıktı görüntülenmez. Ancak, farklılıklar olduğu için çıktı aşağıdakine benzer:
2,4c2,3
< 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
...
> 1 yeşil şişe yanlışlıkla düşerse
> Duvarda duran 9 yeşil şişe olurdu
Başlangıçta, çıktı kafa karıştırıcı görünüyor, ancak terminolojiyi anladığınızda, oldukça mantıklı.

İki dosya arasındaki farklar aşağıdaki gibidir:
- İkinci dosyada sadece üç satır var. İlk dosyada dört tane var.
- İkinci dosya diyor 1 yeşil şişe üçüncü satırda. İlk dosya diyor bir yeşil şişe.
- İkinci dosya diyor kırmızı onun yerine olurdu son satırda.
diff komutunun çıktısı, ilk dosyanın iki ve dördüncü satırları ile ikinci dosyanın iki ve üçüncü satırları arasında farklılıklar olduğunu gösterir.
Daha sonra ilk dosyadaki ikiden dörde kadar olan satırları, ardından ikinci dosyadaki iki farklı satırı listeler.
Yalnızca Dosyalar Farklıysa Nasıl Gösterilir
Yalnızca dosyaların farklı olup olmadığını bilmek istiyorsanız ve hangi satırların farklı olduğuyla ilgilenmiyorsanız, aşağıdaki komutu çalıştırın:
diff -q dosya1 dosya2
Dosyalar farklıysa, aşağıdakiler görüntülenir:
Dosya1 ve dosya2 dosyaları farklıdır
Dosyalar aynıysa hiçbir şey görüntülenmez.
Dosyalar Aynıysa Mesaj Nasıl Gösterilir
Bir komutu çalıştırdığınızda, doğru çalıştığını bilmek isteyebilirsiniz. Diff komutunu çalıştırdığınızda, dosyaların aynı mı yoksa farklı mı olduğunu gösteren bir mesaj istiyorsunuz.
Bu gereksinimi diff komutunu kullanarak elde etmek için aşağıdaki komutu kullanın:
diff -s dosya1 dosya2
Dosyalar aynıysa, şu mesaj görünür:
Dosya1 ve dosya2 dosyaları aynıdır
Farklılıklar Yan Yana Nasıl Üretilir?
Birkaç fark varsa, iki dosya arasındaki farkların gerçekte ne olduğu konusunda kafa karıştırıcı olabilir. Sonuçların yan yana gösterilmesi için diff komutunun çıktısını değiştirebilirsiniz. Bunu yapmak için aşağıdaki komutu çalıştırın:
diff -y dosya1 dosya2
Dosyanın çıktısı, | iki çizgi arasındaki farkı gösteren sembol, bir < kaldırılmış bir satırı göstermek için ve > eklenen bir satırı göstermek için.

Bu makaledeki tanıtım dosyalarını kullanarak komutu çalıştırdığınızda, son satır hariç tüm satırlar farklı görünüyor. dosya2, silinmiş olarak gösterilir.
Sütun Genişliğini Kısıtla
İki dosyayı yan yana karşılaştırırken, dosyalarda birden fazla metin sütunu varsa okunması zor olabilir. Sütun sayısını kısıtlamak için aşağıdaki komutu kullanın:
diff --width=5 dosya1 dosya2
Dosyaları Karşılaştırırken Büyük/Küçük Harf Farklılıkları Nasıl Yoksayılır
İki dosyayı karşılaştırmak istiyorsanız, ancak harflerin iki dosya arasında aynı olup olmadığını umursamıyorsanız, aşağıdaki komutu kullanın:
diff -i dosya1 dosya2
Satır Sonundaki Beyaz Boşluk Nasıl Yok Edilir?
Dosyaları karşılaştırırken birçok farklılık fark ederseniz ve farklılıklar satır sonundaki boşluktan kaynaklanıyorsa, aşağıdaki komutu çalıştırarak bunların değişiklik olarak görünmesini engelleyin:
diff -Z dosya1 dosya2
İki Dosya Arasındaki Tüm Beyaz Boşluk Farkları Nasıl Yoksayılır
Yalnızca bir dosyadaki metinle ilgileniyorsanız ve birinde diğerinden daha fazla boşluk olup olmadığını umursamıyorsanız, aşağıdaki komutu kullanın:
diff -w dosya1 dosya2
İki Dosyayı Karşılaştırırken Boş Satırları Yok Sayma
Bir dosyanın içinde fazladan boş satırlar olmasını umursamıyorsanız, aşağıdaki komutu kullanarak dosyaları karşılaştırın:
diff -B dosya1 dosya2
Özet
Daha fazla bilgiyi okuyarak bulabilirsiniz. diff komutu için el kitabı.
adam fark
diff komutu, yalnızca iki dosya arasındaki farkları göstermek için en basit biçiminde kullanılabilir. oluşturmak için de kullanabilirsiniz. bir fark dosyası bir parçası olarak yama stratejisi.
Dosyaları karşılaştırmak için kullanabileceğiniz başka bir komut cmp komutu. Bu, dosyaları bayt bayt karşılaştırır.