Linux'a Yeni Başlayanlar için Linux sdiff Komut Örnekleri
Daha önceki yazılarımızdan birinde, Linux sistemleri için en iyi 9 dosya karşılaştırma ve fark (Diff) aracını anlatmıştık. Dosyaları karşılaştırmak ve aralarındaki farkları bulmak için her biri belirli dikkat çekici özelliklere sahip olan komut satırı ve GUI araçlarının bir karışımını listeledik. Linux için bir başka kullanışlı diff yardımcı programına sdiff adı verilir.
Ayrıca Okuyun: Diff ve Meld Araçlarını Kullanarak İki Dizin Arasındaki Farkı Bulma
sdiff, iki dosya arasındaki farkları göstermeye ve etkileşimli olarak birleştirmeye yönelik basit bir komut satırı yardımcı programıdır. Kullanımı kolaydır ve aşağıda açıklandığı gibi basit kullanım seçenekleriyle birlikte gelir.
sdiff kullanımının sözdizimi aşağıdaki gibidir.
sdiff option... file1 file2
Linux'ta İki Dosya Arasındaki Farkı Göster
1. sdiff'i çalıştırmanın en kolay yolu, karşılaştırmaya çalıştığınız iki dosya adını sağlamaktır. Aşağıdaki ekran görüntüsünde gösterildiği gibi birleştirilmiş farkı yan yana gösterecektir.
cal >cal.txt
df -h >du.txt
sdiff du.txt cal.txt
Tüm Dosyalara Metin Dosyası Olarak Davran
2. Tüm dosyaları metin olarak ele almak ve bunları metin dosyaları olsun veya olmasın satır satır karşılaştırmak için -a
işaretini kullanın.
sdiff -a du.txt cal.txt
Filesystem Size Used Avail Use% Mounted on | April 2018
udev 3.9G 0 3.9G 0% /dev | Su Mo Tu We Th Fr Sa
tmpfs 788M 9.7M 779M 2% /run | 1 2 3 4 5 6 7
/dev/sda10 324G 265G 43G 87% / | 8 9 10 11 12 13 14
tmpfs 3.9G 274M 3.6G 7% /dev/shm | 15 16 17 18 19 20 21
tmpfs 5.0M 4.0K 5.0M 1% /run/lock | 22 23 24 25 26 27 28
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup | 29 30
/dev/loop2 82M 82M 0 100% /snap/core/4206 |
/dev/loop4 181M 181M 0 100% /snap/vlc/190 <
/dev/loop1 87M 87M 0 100% /snap/core/4407 <
/dev/loop0 189M 189M 0 100% /snap/vlc/158 <
/dev/loop3 83M 83M 0 100% /snap/core/4327 <
cgmfs 100K 0 100K 0% /run/cgmanager/fs <
tmpfs 788M 40K 788M 1% /run/user/1000 <
Sekmeleri ve Beyaz Boşlukları Yoksay
3. Çok fazla boşluk içeren dosyalarınız varsa, -W
anahtarını kullanarak sdiff'e karşılaştırma sırasında tüm boşlukları yok saymasını söyleyebilirsiniz.
sdiff -W du.txt cal.txt
4. Ayrıca -z
seçeneğini kullanarak sdiff'e satır sonundaki boşlukları yok saymasını da söyleyebilirsiniz.
sdiff -z du.txt cal.txt
5. Ayrıca sdiff'e -E
işaretiyle sekme genişletmeden kaynaklanan değişiklikleri yok sayması talimatını verebilirsiniz.
sdiff -E du.txt cal.txt
Farkı Karşılaştırırken Büyük/Küçük Harfleri Yoksay
6. Büyük/küçük harfi göz ardı etmek için (burada sdiff büyük ve küçük harfleri aynı şekilde ele alır), gösterildiği gibi -i
seçeneğini kullanın.
sdiff -i du.txt cal.txt
Farkı Karşılaştırırken Boş Satırları Yoksay
7. -B
seçeneği, dosyalardaki boş satırların yok sayılmasına yardımcı olur.
sdiff -B du.txt cal.txt
Çıktıya Alınacak Sütun Sayısını Tanımlayın
8. sdiff, -w< komutunu kullanarak yazdırılacak sütun sayısını ayarlamanıza olanak tanır (varsayılan 130'dur).
aşağıdaki gibi değiştirin.
sdiff -w 150 du.txt cal.txt
Sekmeleri Uzaylara Genişletin
9. Sekmeleri çıktıdaki boşluklara genişletmek için -t
seçeneğini kullanın.
sdiff -t du.txt cal.txt
sdiff'i Etkileşimli Olarak Çalıştır
10. -o
bayrağı, daha etkileşimli çalışmasını ve çıktıyı bir dosyaya göndermesini sağlar. Bu komutta çıktı sdiff.txt dosyasına gönderilecektir, etkileşimli menüye ulaşmak için %
işaretini gördükten sonra Enter tuşuna basın .
sdiff du.txt cal.txt -o sdiff.txt
Filesystem Size Used Avail Use% Mounted on | April 2018
udev 3.9G 0 3.9G 0% /dev | Su Mo Tu We Th Fr Sa
tmpfs 788M 9.7M 779M 2% /run | 1 2 3 4 5 6 7
/dev/sda10 324G 265G 43G 87% / | 8 9 10 11 12 13 14
tmpfs 3.9G 274M 3.6G 7% /dev/shm | 15 16 17 18 19 20 21
tmpfs 5.0M 4.0K 5.0M 1% /run/lock | 22 23 24 25 26 27 28
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup | 29 30
/dev/loop2 82M 82M 0 100% /snap/core/4206 |
/dev/loop4 181M 181M 0 100% /snap/vlc/190 <
/dev/loop1 87M 87M 0 100% /snap/core/4407 <
/dev/loop0 189M 189M 0 100% /snap/vlc/158 <
/dev/loop3 83M 83M 0 100% /snap/core/4327 <
cgmfs 100K 0 100K 0% /run/cgmanager/fs <
tmpfs 788M 40K 788M 1% /run/user/1000 <
%
ed: Edit then use both versions, each decorated with a header.
eb: Edit then use both versions.
el or e1: Edit then use the left version.
er or e2: Edit then use the right version.
e: Discard both versions then edit a new one.
l or 1: Use the left version.
r or 2: Use the right version.
s: Silently include common lines.
v: Verbosely include common lines.
q: Quit.
%
Bu senaryoda, ed gibi düzenleyicilerden bazılarını kullanmadan önce sisteminizde yüklü olması gerektiğini unutmayın.
Dosyaları Karşılaştırmak İçin Başka Bir Programı Çağırın
11. --diff-program
anahtarı, örneğin dosyaları karşılaştırmak için sdiff'in kendisi dışında başka bir komut satırı aracını çağırmanıza olanak tanır. diff programını gösterildiği gibi çağırabilirsiniz.
sdiff --diff-program=diff du.txt cal.txt
Daha fazla bilgi için sdiff man sayfasına bakın.
man sdiff
Bu makalede yeni başlayanlar için sdiff komut satırı aracı örneklerine baktık. Sorularınız varsa aşağıdaki yorum formunu kullanarak bize ulaşabilirsiniz.