GNU/Linux >> Belajar Linux >  >> Linux

Tutorial perintah cmp Linux untuk pemula (7 contoh)

Cukup banyak terlepas dari peran Anda, jika pekerjaan rutin Anda melibatkan melakukan hal-hal pada baris perintah di Linux, Anda mungkin menemukan diri Anda dalam situasi di mana Anda ingin membandingkan dua file menggunakan utilitas baris perintah. Ada beberapa alat baris perintah yang memungkinkan Anda melakukan ini, dan salah satunya adalah 'cmp ' perintah.

Dalam tutorial ini, kita akan membahas 'cmp' melalui contoh yang mudah dipahami. Namun sebelum kita melakukannya, perlu disebutkan bahwa semua contoh dan instruksi yang disebutkan dalam tutorial ini telah diuji di Ubuntu 16.04LTS.

perintah cmp

Perintah 'cmp' memungkinkan Anda melakukan perbandingan byte demi byte dari dua file. Utilitas menyediakan beberapa fitur dalam bentuk opsi baris perintah. Dalam tutorial ini, kita akan membahas beberapa opsi utama yang akan memberi Anda (pemula) ide bagus tentang cara kerja alat ini.

1. Bagaimana membandingkan dua file menggunakan cmp

Dalam bentuknya yang paling sederhana, Anda dapat menggunakan 'cmp' dengan cara berikut:

cmp [file1-name] [file2-name]

Seperti yang telah disebutkan, alat ini membandingkan dua file byte demi byte. Saat perbedaan ditemukan, alat berhenti dan menghasilkan output yang memberi tahu baris dan byte mana perbedaannya.

Misalnya:

cmp file1.txt file2.txt

Seperti yang Anda lihat pada tangkapan layar di atas, output dengan jelas mengatakan bahwa file berbeda pada byte 20 di baris 1.

2. Cara membuat cmp mencetak byte yang berbeda

Jika mau, Anda juga dapat membuat 'cmp' menampilkan byte yang berbeda dalam outputnya. Ini dapat dilakukan dengan menggunakan -b opsi baris perintah.

cmp -b [file1] [file2]

Misalnya:

cmp -b file1.txt  file2.txt

Dalam hal ini, seperti yang Anda lihat pada tangkapan layar di atas, perbedaannya adalah pada byte ke-17, yaitu 'l' di file1.txt dan 'i' di file2.txt. Nilai 154 dan 151 masing-masing adalah nilai untuk byte ini.

3. Cara membuat cmp melewati beberapa byte awal dari kedua file

Jika mau, Anda juga dapat membuat 'cmp' melewati sejumlah byte awal tertentu dari kedua file, lalu membandingkannya. Ini dapat dilakukan dengan menentukan jumlah byte sebagai argumen ke -i opsi baris perintah.

cmp -i [byte-to-be-skipped] [file1] [file2

Misalnya:

cmp -i 10 file1.txt  file2.txt

Perhatikan bahwa dalam kasus seperti ini (di mana Anda menggunakan -i untuk melewati byte), byte di mana perbandingan dimulai diperlakukan sebagai byte nomor nol.

Selanjutnya, alat ini juga memungkinkan Anda untuk melewati jumlah byte yang berbeda dari kedua file. Ini dapat dilakukan dengan cara berikut:

cmp -i [bytes-to-skip-from-first-file] : [bytes-to-skip-from-second-file] [file1] [file2]

Misalnya:

cmp -i 4:7 file1.txt file2.txt

4. Cara membuat cmp menampilkan posisi byte (dan nilai) untuk semua byte yang berbeda

Jika mau, Anda juga dapat membuat perintah 'cmp' mencetak posisi byte dan nilai byte untuk semua byte yang berbeda. Fitur ini dapat diakses menggunakan -l opsi baris perintah.

cmp -l [file1] [file2]

Misalnya:

cmp -l file1.txt  file2.txt

Kolom pertama dalam output (contoh yang ditunjukkan di atas) mewakili posisi (nomor byte) dari byte yang berbeda. Kolom kedua mewakili nilai byte dari byte yang berbeda pada file pertama, sedangkan kolom ketiga mewakili nilai byte dari byte yang berbeda pada file kedua.

5. Bagaimana membatasi jumlah byte yang akan dibandingkan

Alat ini juga memungkinkan Anda membatasi jumlah byte yang ingin Anda bandingkan - seperti, Anda mungkin ingin membandingkan paling banyak 25 atau 50 byte. Ini dapat dilakukan dengan menggunakan -n opsi baris perintah.

$ cmp -n [number-of-bytes-to-be-compared]  [file1] [file2]

Misalnya:

$ cmp -n 25  file1.txt  file2.txt

6. Cara menampilkan pengukur kemajuan saat menggunakan perintah cmp

Saat membandingkan file besar (atau bahkan partisi) menggunakan 'cmp', Anda mungkin ingin melihat kemajuan perbandingan yang sedang berlangsung. Ini dapat dilakukan dengan menggunakan perintah 'pv' bersama dengan perintah 'cmp'. Berikut template perintah yang dapat Anda gunakan:

$ pv [file1] | cmp -l [file2] > [output-file]

Misalnya:

$ pv file1.txt | cmp -l file3.txt > output.txt

Perhatikan bahwa file 'output.txt' akan berisi semua output yang dihasilkan oleh perintah 'cmp'. Pengukur kemajuan (yang dapat Anda lihat pada tangkapan layar di atas) dihasilkan oleh perintah 'pv'.

Perintah 'pv' biasanya tidak diinstal sebelumnya di Linux (setidaknya tidak di Ubuntu). Tetapi Anda dapat dengan mudah menginstalnya menggunakan perintah berikut:

sudo apt-get install pv

7. Cara membuat 'cmp' menekan output

Alat ini juga memungkinkan Anda untuk menekan output yang dihasilkannya secara normal. Ini dapat dilakukan dengan menggunakan -s opsi baris perintah.

$ cmp -s [file1] [file2]

Misalnya:

$ cmp -s file1.txt file2.txt

Opsi ini mungkin berguna saat menggunakan utilitas 'cmp' dalam skrip. Misalnya, tergantung pada apakah file tersebut identik atau tidak (yang mana dapat diketahui dengan mengakses kode keluar perintah), Anda mungkin ingin menampilkan pesan khusus alih-alih output yang biasanya dihasilkan alat.

Kesimpulan

Kami telah membahas sebagian besar opsi perintah 'cmp' di artikel ini, jadi Anda hanya perlu mempraktikkannya untuk mulai menggunakan alat ini dalam pekerjaan sehari-hari Anda. Jika ada keraguan atau pertanyaan, lihat halaman manual 'cmp'.


Linux
  1. Tutorial perintah cd Linux untuk pemula (8 Contoh)

  2. Tutorial Perintah Tanggal Linux untuk Pemula (8 Contoh)

  3. Tutorial Perintah Hostname Linux untuk Pemula (5 Contoh)

  1. Tutorial perintah comm Linux untuk pemula (5 contoh)

  2. Tutorial Perintah Linux df untuk Pemula (8 Contoh)

  3. Tutorial Perintah Linux du untuk Pemula (10 Contoh)

  1. Tutorial Perintah gema Linux untuk Pemula (5 Contoh)

  2. Tutorial Perintah Linux env Untuk Pemula (5 Contoh)

  3. Tutorial Perintah ukuran Linux untuk Pemula (6 Contoh)