diff

diff(1)                        Kullanıcı Komutları                       diff(1)



İSİM
       diff - iki dosya arasındaki farklılıkları bulur

KULLANIM
       diff [ seçenekler ] 1.dosya 2.dosya

AÇIKLAMA
       diff, en basit tabiri ile, iki farklı dosyanın içeriğini karşılaştırır.
       Dosya ismi olarak - verilmişse, diff standart girdiyi okur. Özel bir
       durum olarak, diff - - şeklinde komut kullanımı, standart girdi ile bir
       kopyasını karşılaştırır.

       Şayet 1.dosya bir dizin ve 2.dosya değilse, diff komutu, 1.dosya ile
       verilen dizin içindeki 2.dosya ile aynı isimli dosyayı karşılaştırır; bu
       durum tersi için de geçerlidir. Dizin olmayan dosya mutlaka - olmalıdır.

       Şayet her iki girdi de dizin ise, diff, alfabetik sıra ile, eşleşen bütün
       dosyaları karşılaştırır. Bu karşılaştırma alt dizinlerde yapılmaz. Şayet
       alt dizinlerdeki dosyalarında karşılaştırılmasını -r veya -recursive
       seçeneğini belirtmeniz gerekir. diff, asla bir dizinin asıl içeriğini bir
       dosyaymış gibi karşılaştırmaz. Standart girdi isimsiz olduğundan, tamamen
       tanımlanmış bir dosyaya standart girdi muamelesi yapılmaz ve  "aynı
       isimli dosya" fikri buraya uygulanamaz.

       diff seçenekleri -  ile başlar. Bu nedenle 1.dosya ve 2.dosya isimleri -
       ile başlayamaz. Bunun yanında, -- şeklinde kullanım ile bu sorunu
       aşabilirsiniz. -- işaretinden sonra gelen argümanlar - ile başlasa bile
       dosya ismi olarak değerlendirilir.

   Seçenekler
       Aşağıda, GNU diff'in kabul ettiği bütün komutların bir özetini
       bulacaksınız. Pek çok seçenek iki eşdeğer isme sahiptir. Birincisi - ile
       başlayan tek bir harften oluşur, diğeri ise -- ile başlayan uzun bir
       isimden meydana gelmektedir. Çok sayıda tek harfli seçenek (bir argüman
       almadıkça), -ac gibi yanyana yazılabilir: -ac, -a ve -c anlamına gelir.
       Uzun isimli seçenekler de başlangıçtan itibaren kendilerinden başka bir
       seçenekle karışmayacak şekilde kısaltılarak kullanılabilirler. Köşeli
       parantezler içindeki argümanlar, gerekli değilse verilmeyebileceği
       anlamına gelir.

       -satır_sayısı
              Dosya içeriğin tamsayı cinsinden satır sayısı (-5 gibi
              belirtilir). Bu seçenek kendi başına bir çıktı biçimi tanımlamaz.
              -c veya -u ile birlikte kullanılmadığı sürece bir etkisi yoktur.
              Bu seçenek eskidir. patch komutunun düzgün çalışması için içerikte
              en az iki satır olması gerekir.

       -a, --text
              Metin dosyası olmasalar bile, bütün dosyaları metin dosyaları
              olarak kabul eder ve onları satır satır karşılaştırır.

       -b, --ignore-space-change
              Karşılaştırmada ara boşluklarındaki farklar dikkate alınmaz.

       -B     Karşılaştımada boş satırlardaki farklar dikkate alınmaz.

       -c     Bağlamsal çıktı biçimi kullanılır.

       -C satır_sayısı, --context[=satır_sayısı]
              Bağlamın satır_sayısı satırı gösterilerek bağlamsal çıktı biçimi
              kullanılır.  satır_sayısı belirtilmezse üç satır gösterilir. patch
              komutunun düzgün çalışması için içerikte en az iki satır olması
              gerekir.

       --changed-group-format=biçim
              Her iki dosyadaki if-then-else biçimindeki farklı satırları içeren
              satır gruplarını çıktılarken biçim kullanılır.

       -d, --minimal
              En küçük değişikliği bile bulmak için algoritma değiştirilir. Bu
              seçenek diff'in yavaş çalışmasına (bazan oldukça yavaş) sebep
              olur.

       -D isim
              isim önişlemci makrosunun koşullarına uygun olarak katıştırılmış
              if-then-else biçimli çıktı üretir.

       -e, -ed
              Çıktıyı bir ed betiği olarak üretir.

       -f, --forward-ed
              Çıktı bir ed betiği gibi karışık olur ancak farklar dosyadaki
              sırasına uygun çıktılanır.

       -F düzifd, --show-function-line=düzifd
              Bağlamsal veya tekilleştirilmiş biçimde, her bir değişiklik
              parçası için, önceki satırdan düzifd ile eşleşen kısmı gösterir.

       -h     Bu seçenek herhangi bir etkiye sahip değildir, Unix uyumluluğu
              için vardır.

       -H
       --speed-large-files
              Pek çok küçük değişikliğe sahip büyük dosyaların
              karşılaştırılmasında işlemini hızlandırmak için buluşsal yöntemler
              (heuristics) kullanılır.

       --horizon-lines=satır_sayısı
              Farklılıklardan önceki ortak satırların son satır_sayısı satırını
              ve farklılıklardan sonraki ortak satırların ilk satır_sayısı
              satırını iptal etmez.

       -i, --ignore-case
              Büyük ve küçük harf kullanımından kaynaklanan farklar gözönüne
              alınmaz, aynı kabul edilir.

       --ifdef=isim
              isim önişlemci makrosunun koşullarına uygun olarak katıştırılmış
              if-then-else biçimli çıktı üretir.

       -I düzifd, --ignore-matching-lines=düzifd
              düzifd ile eşleşen satırlar diğer dosyada olsa da olmasada yok
              sayılır.

       --ignore-blank-lines
              Satırları karşılaştırırken boş satırları yoksayar.

       -l, --paginate
              Çıktıyı sayfalamak için pr komutundan geçirir.

       -L etiket, --label=etiket
              Bağlamsal ya da tekilleştirilmiş biçimli başlıklarda dosya ismi
              yerine etiket kullanılır.

       --left-column
              Yanyana çıktılama biçiminde iki ortak satırdan sadece soldakini
              basar.

       --line-format=biçim
              if-then-else biçimli tüm girdi satırlarını çıktılarken biçim
              kullanılır.

       -n, -rcs
              RCS biçimli çıktı verir; her komutun etkilenen satır sayısını
              belirtmesi dışında -f ile aynıdır.

       -N, --new-file
              Dizinleri karşılaştırırken, bir dosyanın sadece tek bir dizin
              içinde bulunduğu durumlarda; bu dosyayı diğer dizin içinde de, içi
              boş olarak, varmış gibi kabul eder.

       --new-group-format=biçim
              İkinci dosyadaki if-then-else biçimli girdi satırı gruplarını
              çıktılarken biçim kullanılır.

       --new-line-format=biçim
              İkinci dosyadaki if-then-else biçimli bir girdi satırını
              çıktılarken biçim kullanılır.

       --old-group-format=biçim
              Birinci dosyadaki if-then-else biçimli girdi satırı gruplarını
              çıktılarken biçim kullanılır.

       --old-line-format=biçim
              Birinci dosyadaki if-then-else biçimli bir girdi satırını
              çıktılarken biçim kullanılır.

       -p, --show-c-function
              Her bir değişikliğin hangi C işlevi içinde olduğunu gösterir.

       -P, --unidirectional-new-file
              Dizinleri karşılaştırırken, bir dosyanın sadece ikinci dizin
              içinde bulunduğu durumlarda; bu dosyayı diğer dizin içinde de, içi
              boş olarak, varmış gibi kabul eder.

       -q, --brief
              Dosyalar farklıysa sadece raporlar, farkları bulmaz.

       -r, --recursive
              Dizinleri karşılaştırırken, bulunan bütün alt dizinlerin
              içindekileri de karşılaştır.

       -s
       --report-identical-files
              Dosyalar aynıysa raporlar.

       -S dosya, --starting-file=dosya
              Dizinleri karşılaştırırken, dosya ile belirtilen dosyadan başlar.
              Böylece yarıda kalmış bir kıyaslamayı devam ettirebilirsiniz.

       --from-file=dosya
              Tüm terimleri dosya ile karşılaştırır. dosya bir dizin olabilir.

       --to-file=dosya
              dosyayı tüm terimlerle karşılaştırır. dosya bir dizin olabilir.

       --sdiff-merge-assist
              sdiff'e yardım için ek bilgiler basar. sdiff, bu bilgileri diff'i
              çalıştırırken kullanır. Bu seçenek, kullanıcıların doğrudan
              kullanması için tasarlanmamıştır.

       --suppress-common-lines
              Yan yana çıktı biçiminde ortak satırlar çıktılanmaz.

       -t
       --expand-tabs
              Girdi dosyalarındaki sekmelerin eşitliğini sağlamak için;
              çıktılarken sekmeleri boşluklara çevirir.

       -T
       --initial-tab
              Normal ya da bağlamsal biçimdeki bir satırın metninden önceki
              boşlukları sekmelerle değiştirir. Böylece, satırların sekmelerle
              hizalanarak düzgün görünmesi sağlanır.

       -u     Tekilleştirilmiş dosya biçimi kullanılır.

       --unchanged-group-format=biçim
              Her iki dosyadan da alınmış if-then-else biçimindeki bir ortak
              satır grubunu biçim biçiminde çıktılar.

       --unchanged-line-format=biçim
              Her iki dosyadan da alınmış if-then-else biçimindeki bir ortak
              satırı biçim biçiminde çıktılar.

       -U satır_sayısı, --unified[=satır_sayısı]
              Bağlamın satır_sayısı satırı gösterilerek tekilleştirilmiş çıktı
              biçimi kullanılır.  satır_sayısı belirtilmezse üç satır
              gösterilir. patch komutunun düzgün çalışması için içerikte en az
              iki satır olması gerekir.

       -v, --version
              diff'in sürüm numarasını basar.

       -w
       --ignore-all-space
              Satırları karşılaştırırken boşlukları atlar.

       -W krk_sayısı, --width=krk_sayısı
              Yanyana çıktı biçiminde krk_sayısı ile belirtilen genişlikte
              sütunlar kullanılır.

       -x şablon, --exclude=şablon
              Dizinleri kıyaslarken, şablon ile eşleşen sahip alt dizinleri ve
              dosyaları yoksayar.

       -X dosya, --exclude-from=dosya
              Dizinleri kıyaslarken, dosya içindeki şablonlar ile eşleşen sahip
              alt dizinleri ve dosyaları yoksayar.

       -y, --side-by-side
              Yan yana çıktı biçimi kullanılır.

İLGİLİ BELGELER
       cmp(1), comm(1), diff3(1), ed(1), patch(1)), pr(1), sdiff(1).


ÇIKIŞ DURUMU
       Çıkış durumu olarak 0'ın anlamı, hiçbir farklılık bulunamadığıdır. Bazı
       farklılıkların olduğu durumlarda 1 ile çıkar. Şayet 2 ile çıkarsa, bir
       sorun var demektir.


ÇEVİREN
       Yalçın Kolukısa <yalcink01 (at) yahoo.com>, Aralık 2003





GNU Araçları                      22 Eylül 1993                          diff(1)