Bagaimana Membandingkan Dua File di Linux

How Compare Two Files Linux



Jika Anda ingin membandingkan dua file dan menguraikan perbedaannya, perintah yang disebut berbeda digunakan. Panduan ini difokuskan untuk memberi Anda penggunaan berbeda perintah dengan berbagai opsi untuk mendapatkan perbedaan antara dua file.

Jadi, bagaimana caranya? berbeda perintah benar-benar berfungsi? NS berbeda perintah membandingkan dua file dan menampilkan daftar perbedaan antara kedua file. Lebih tepatnya, ini menghasilkan daftar modifikasi yang perlu dibuat di file pertama agar sesuai dengan file kedua. NS berbeda perintah juga digunakan oleh programmer untuk mendapatkan perbedaan antara dua file kode sumber untuk mengembangkan tambalan.







Sebelum masuk ke contoh, perhatikan bahwa urutan file sangat penting. Karena berbeda perintah memberikan output berdasarkan urutan file.



Cara Menggunakan Perintah diff di Linux untuk Membandingkan File:

Sintaks dari berbeda perintah disebutkan di bawah ini:



$berbeda [pilihan] [file1] [file2]

Pertama, buat dua file. Saya membuat file teks dengan nama test_file_1.txt dan test_file_2.txt . File-file ini berisi konten dengan sedikit perbedaan:





Sekarang gunakan perintah berikut untuk mendapatkan perbedaannya:



$berbedatest_file_1.txt test_file_2.txt

Output standar menampilkan baris yang sesuai dengan urutan file yang disebutkan dalam perintah. Jadi, mari kita decode outputnya:

Perbandingan file diberi label, dan setiap label memiliki nomor di kedua sisi. Formatnya adalah sebagai berikut:

[Nomor baris file 1][Label(a,c,d)][Nomor baris file 2]

Ada tiga label:

  • ke – Tambah: Tambahkan konten di file pertama untuk disinkronkan dengan file kedua.
  • C – Ubah: Menunjukkan bahwa diperlukan modifikasi dalam konten file pertama agar sesuai dengan file kedua.
  • D – Hapus: Hapus konten dari file pertama untuk dicocokkan dengan yang kedua.

2d1 menunjukkan untuk menghapus nomor baris 2 dari file pertama untuk mencocokkan file kedua dari nomor baris 1.

Demikian pula, 4c3 berarti membuat perubahan pada baris keempat dari file pertama agar sesuai dengan baris nomor 3 dari file kedua karena kedua baris sedikit berbeda.

Ada metode lain untuk melihat perbedaannya, gunakan berbeda perintah dengan -dan pilihan:

$berbeda -dan -DI DALAM 60test_file_1.txt test_file_2.txt

Pada output di atas, isi dari test_file_1.txt ditampilkan di sisi kiri, sedangkan konten text_file_2.txt ditampilkan di sisi kanan. Perbedaannya ditunjukkan oleh simbol:

  • | — Baris berbeda di file kedua
  • > — Baris adalah tambahan di file kedua
  • <— Line has been deleted from the second file

-W menunjukkan lebar antara konten dua file. Untuk mendapatkan secara terpisah dan melihat perbedaannya, gunakan yang berikut ini:

$berbeda -dan -DI DALAM 60 --menekan-garis-umumtest_file_1.txt test_file_2.txt

Cara Mendapatkan Output dalam Satu Baris Menggunakan Perintah diff:

Jika metode berlabel sulit untuk Anda dekode, maka ada pendekatan yang lebih sederhana. Menggunakan -Q pilihan dengan berbeda perintah memberi Anda output dalam satu baris. Yah, tanpa informasi tambahan, meskipun:

$berbeda -Qtest_file_1.txt test_file_2.txt

Jika file berbeda, maka perintah di atas akan memberikan output. Jika file identik, maka tidak akan ada output. Untuk mendemonstrasikannya, saya membuat salinan test_file_1.txt menggunakan:

$cptest_file_1.txt test_file_3.txt

Sebuah file baru akan dibuat dengan nama test_file_3.txt berisi konten yang sama yang test_file_1.txt memiliki. Sekarang, gunakan:

$berbeda -Qtest_file_1.txt test_file_2.txt

Karena kedua file memiliki konten yang serupa, oleh karena itu, tidak akan ada output.

Cara Memeriksa Perbedaan File dalam Mode Konteks Menggunakan Perintah diff:

Untuk mendapatkan perbandingan dalam mode konteks, -C opsi akan digunakan dengan berbeda memerintah:

$berbeda -Ctest_file_1.txt test_file_2.txt

Mari kita membedah outputnya.

Untuk menjaga perbedaan, file pertama ditandai dengan *** beserta tanggal dan waktu pembuatannya, sedangkan file kedua ditandai dengan —.

Baris berikutnya menandakan rentang garis yang dipertimbangkan selama perbandingan. Untuk file pertama, itu adalah *** 1,6 **** dan untuk file kedua, itu adalah —1.5—- :

Perbedaannya ditunjukkan oleh simbol:

  • + : Baris tidak ada di file pertama. Masukkan di file pertama atau hapus dari file kedua untuk mencocokkan kedua file.
  • – : Baris ada di file pertama tetapi tidak ada di file kedua. Cobalah untuk memasukkannya ke dalam file kedua atau menghapusnya dari yang pertama untuk mencocokkan kedua file.
  • ! : Garis perlu dimodifikasi agar sesuai.

Cara Memeriksa Perbedaan File dalam Mode Terpadu Menggunakan Perintah diff:

Mode terpadu sangat mirip dengan mode konteks tetapi tanpa informasi yang berlebihan. Bendera yang kami gunakan adalah -u :

$berbeda -utest_file_1.txt test_file_2.txt

Dalam output, file pertama ditunjukkan oleh — dan yang kedua oleh +++. Baris kedua menunjukkan jumlah baris yang dipertimbangkan untuk perbandingan di kedua file, kemudian konten yang akan dihapus, ditambahkan, atau dimodifikasi dengan simbol-simbolnya. Tidak akan ada simbol dengan garis yang sama di kedua file.

Cara Mengabaikan Sensitivitas Huruf Besar Saat Menggunakan Perintah diff:

Jika Anda ingin membandingkan file sambil mengabaikan sensitivitas huruf besar-kecil, gunakan tombol -Saya bendera:

$berbeda -Sayatest_file_1.txt test_file_2.txt

Untuk demonstrasi, saya telah membuat D dari Deepin di file pertama kecil:

Seperti yang terlihat pada perintah pertama, perbedaannya ditunjukkan; saat menggunakan -Saya perbedaan itu telah dihilangkan.

Beberapa opsi berguna lainnya dari berbeda perintah tercantum di bawah ini:

Pilihan Keterangan
-ke Opsi ini memperlakukan semua file sebagai file teks
-B Itu mengabaikan modifikasi di mana semua baris kosong
-DAN Opsi ini mengabaikan perluasan tab
-SAYA Itu mengabaikan perubahan di mana semua baris cocok
-S Memberikan output ketika dua file identik
-di dalam Itu mengabaikan semua ruang putih
-DENGAN Itu mengabaikan ruang putih di akhir baris

Cara Menggunakan Vim Editor untuk Membandingkan Dua File:

Metode lain untuk membandingkan dua file adalah menggunakan vimdiff memerintah. Untuk itu, Anda harus menginstal vim:

$sudotepatInstall saya datang

Sekarang, untuk membandingkan dua file gunakan:

$vimdiff test_file_1.txt test_file_2.txt

Kedua file akan dibuka berdampingan. Bagian yang tidak cocok akan disorot:

Cara Membandingkan Dua File Menggunakan colordiff:

Pendekatan lain adalah semacam perpanjangan dari berbeda memerintah. Anda dapat membuat perbandingan lebih mudah dikenali dengan menambahkan warna ke dalamnya. Untuk menginstal gunakan:

$sudotepatInstallperbedaan warna

Untuk membandingkan file, gunakan:

$colordiff test_file_1.txt test_file_2.txt

Anda dapat mengganti berbeda dengan perbedaan warna untuk mendapatkan output standar dari berbeda perintah dalam format berwarna.

Kesimpulan:

Untuk membandingkan file di Linux dan bahkan di macOS, utilitas yang digunakan disebut diff. Utilitas diff membandingkan dua file dan memberikan informasi tentang perbedaan antara dua file. Para pengembang terutama menggunakan perintah diff untuk membuat file patch.

Dalam panduan ini, kami benar-benar membahas berbeda perintah dan cara menggunakannya untuk membandingkan dua file dengan opsi yang berbeda. Kami juga belajar cara menggunakan perbedaan warna untuk membuat perbedaan file lebih mudah dikenali. Tetapi jika Anda menemukan utilitas berbasis terminal sulit digunakan, ada beberapa alat berbasis GUI juga, seperti Kompare, DiffMerge, Meld — Diff Tool dan Diffuse — GUI Giff Tool.