Peki, nasıl fark komut aslında işlev? NS fark komutu iki dosyayı karşılaştırır ve her iki dosya arasındaki farkların bir listesini verir. Daha doğrusu, ikinci dosyayla eşleşmesi için ilk dosyada yapılması gereken değişikliklerin bir listesini verir. NS fark komut ayrıca programcılar tarafından yamaları geliştirmek için iki kaynak kod dosyası arasındaki farkı almak için kullanılır.
Örneklere geçmeden önce, dosyaların sırasının çok önemli olduğunu unutmayın. Çünkü fark komutu, dosyaların sırasına göre çıktı verir.
Dosyaları Karşılaştırmak için Linux'ta diff Komutu Nasıl Kullanılır:
sözdizimi fark komut aşağıda belirtilmiştir:
$fark [seçenekler] [dosya1] [dosya2]
İlk önce iki dosya oluşturun. adına göre metin dosyaları oluşturuyorum test_file_1.txt ve test_file_2.txt . Bu dosyalar, küçük bir farkla içerik içerir:
Şimdi farkı almak için aşağıdaki komutu kullanın:
$farktest_file_1.txt test_file_2.txt
Standart çıktı, komutta belirtilen dosyaların sırasına göre eşleşen satırları gösterdi. Öyleyse, çıktının kodunu çözelim:
Dosyaların karşılaştırılması etiketlenir ve her etiketin her iki tarafında bir numara bulunur. Biçim aşağıdaki gibidir:
[Dosya 1 satır numarası][Etiket(a,c,d)][Dosya 2] satır numarası
Üç etiket vardır:
- ile – Ekle: İkinci dosyayla senkronize etmek için ilk dosyaya içerik ekleyin.
- C – Değiştir: İkinci dosyayla eşleşmesi için ilk dosyanın içeriğinde değişiklik yapılması gerektiğini belirtir.
- NS – Sil: İkinciyle eşleştirmek için içeriği ilk dosyadan kaldırın.
2d1 1. satırdan ikinci dosyayla eşleşmesi için ilk dosyanın 2. satır numarasının silinmesini belirtir.
Benzer şekilde, 4c3 her iki satır biraz farklı olduğundan, ilk dosyanın dördüncü satırında ikinci dosyanın 3 numaralı satırıyla eşleşecek şekilde bir değişiklik yapmak anlamına gelir.
Farkı görmek için başka bir yöntem daha var, fark ile komut -ve seçenek:
$fark -ve -İÇİNDE 60test_file_1.txt test_file_2.txt
Yukarıdaki çıktıda, içeriği test_file_1.txt içeriği sol tarafta görüntülenirken text_file_2.txt sağ tarafta görüntülenir. Fark, sembollerle gösterilir:
- | — İkinci dosyada satır farklı
- > — İkinci dosyada satır ektir
- <— Line has been deleted from the second file
-W, iki dosyanın içeriği arasındaki genişliği gösterir. Ayrı ayrı almak ve farkı görmek için aşağıdakileri kullanın:
$fark -ve -İÇİNDE 60 --baskı-ortak-çizgileritest_file_1.txt test_file_2.txt
diff Komutunu Kullanarak Tek Satırda Çıktı Nasıl Alınır:
Etiketli yöntemin kodunu çözmeniz zorsa, daha basit bir yaklaşım vardır. Kullanmak -Q seçeneği ile fark komut size bir satırda çıktı verir. Yine de, herhangi bir ek bilgi olmadan:
$fark -Qtest_file_1.txt test_file_2.txt
Dosyalar farklıysa, yukarıdaki komut bir çıktı verecektir. Dosyalar aynıysa, çıktı olmayacaktır. Bunu göstermek için, bir kopyasını oluşturuyorum test_file_1.txt kullanarak:
$cptest_file_1.txt test_file_3.txt
adıyla yeni bir dosya oluşturulacaktır. test_file_3.txt aynı içeriği içeren test_file_1.txt vardır. Şimdi, şunu kullanın:
$fark -Qtest_file_1.txt test_file_2.txt
Her iki dosya da benzer içeriğe sahip olduğundan, çıktı olmaz.
Diff Komutunu Kullanarak Bağlam Modunda Dosyaların Farkı Nasıl Kontrol Edilir:
Bağlam modunda karşılaştırmayı elde etmek için, -C seçeneği ile kullanılacaktır. fark emretmek:
$fark -Ctest_file_1.txt test_file_2.txt
Çıktıyı inceleyelim.
Farkı korumak için, ilk dosya oluşturma tarihi ve saati ile birlikte *** ile gösterilirken, ikinci dosya — ile gösterilir.
Sonraki satır, karşılaştırma sırasında dikkate alınan bir dizi satırı belirtir. İlk dosya için, *** 1,6 **** ve ikinci dosya için, —1.5—- :
Fark, sembollerle gösterilir:
- + : İlk dosyada satır yok. Her iki dosyayla da eşleşmesi için ilk dosyaya ekleyin veya ikinci dosyadan çıkarın.
- – : Satır ilk dosyada var ama ikinci dosyada yok. Her iki dosyayla da eşleşmesi için ikinci dosyaya eklemeyi veya ilk dosyadan kaldırmayı deneyin.
- ! : Satırın eşleşmesi için değişiklik yapılması gerekiyor.
Diff Komutunu Kullanarak Birleşik Modda Dosyaların Farkı Nasıl Kontrol Edilir:
Birleşik mod, bağlam moduna oldukça benzer, ancak fazla bilgi içermez. Kullandığımız bayrak -u :
$fark -utest_file_1.txt test_file_2.txt
Çıktıda, ilk dosya — ve ikincisi +++ ile gösterilir. İkinci satır, her iki dosyada karşılaştırma için düşünülen satır sayısını, ardından bunlarla birlikte sembollerle silinecek, eklenecek veya değiştirilecek içeriği gösterir. Her iki dosyada da benzer satırlara sahip sembol bulunmayacaktır.
diff Komutu Kullanılırken Büyük/Küçük Harfe Duyarlılığı Nasıl Yoksayılır:
Büyük/küçük harf duyarlılığını göz ardı ederek dosyaları karşılaştırmak istiyorsanız, -ben bayrak:
$fark -bentest_file_1.txt test_file_2.txtGösteri için yaptım NS ile ilgili Derin ilk dosyada küçük:
İlk komutta görüldüğü gibi fark belirtilir; kullanırken -ben bu fark ortadan kalktı.
Diğer bazı yararlı seçenekler fark komut aşağıda listelenmiştir:
Seçenek | Açıklama |
---|---|
-ile | Bu seçenek, tüm dosyaları metin dosyaları olarak ele alır. |
-B | Tüm satırların boş olduğu değişiklikleri yok sayar |
-VE | Bu seçenek sekme genişletmeyi yok sayar |
-BEN | Tüm satırların eşleştiği değişiklikleri yok sayar. |
-s | İki dosya aynı olduğunda çıktı verir |
-içinde | Tüm beyaz boşlukları yok sayar |
-İLE BİRLİKTE | Satır sonundaki beyaz boşluğu yok sayar |
İki Dosyayı Karşılaştırmak için Vim Editor Nasıl Kullanılır:
İki dosyayı karşılaştırmanın başka bir yöntemi, vimdiff emretmek. Bunun için vim'in kurulu olması gerekir:
$sudouygunYüklemek geldim
Şimdi, iki dosyayı karşılaştırmak için şunu kullanın:
$vimdiff test_file_1.txt test_file_2.txt
Her iki dosya da yan yana açılacaktır. Eşleşmeyen kısım vurgulanacaktır:
colordiff Kullanarak İki Dosya Nasıl Karşılaştırılır:
Başka bir yaklaşım, bir tür uzantısıdır. fark emretmek. Renkler ekleyerek karşılaştırmayı daha anlaşılır hale getirebilirsiniz. Yüklemek için şunu kullanın:
$sudouygunYüklemekrenk farkı
Dosyaları karşılaştırmak için şunu kullanın:
$colordiff test_file_1.txt test_file_2.txt
değiştirebilirsiniz fark ile birlikte renk farkı standart çıktısını almak için fark renkli formatta komut.
Çözüm:
Dosyaları Linux'ta ve hatta macOS'ta karşılaştırmak için kullanılan yardımcı programa diff adı verilir. diff yardımcı programı iki dosyayı karşılaştırır ve iki dosya arasındaki farklar hakkında bilgi verir. Geliştiriciler, yama dosyaları oluşturmak için öncelikle diff komutunu kullanır.
Bu kılavuzda, kapsamlı bir şekilde tartıştık fark komutu ve iki dosyayı farklı seçeneklerle karşılaştırmak için nasıl kullanılacağı. kullanmayı da öğrendik renk farkı dosya farklılıklarını daha tanınabilir hale getirmek için. Ancak terminal tabanlı yardımcı programı kullanmayı zor bulursanız, Kompare, DiffMerge, Meld - Diff Aracı ve Diffuse - GUI Giff Aracı gibi GUI tabanlı araçlar da vardır.