Lệnh comp trong Windows

Lệnh comp so sánh nội dung của hai file hoặc tập hợp các file theo từng byte. Nếu được sử dụng không có tham số, lệnh comp sẽ nhắc bạn nhập các file để so sánh.

Để biết ví dụ về cách sử dụng lệnh này, vui lòng xem phần Ví dụ bên dưới.

Lệnh comp trong Windows

Cú pháp lệnh comp

comp [<Data1>] [<Data2>] [/d] [/a] [/l] [/n=<Number>] [/c]

Tham số

Tham số Mô tả
<Data1> Chỉ định vị trí và tên của file hoặc tập hợp các file đầu tiên mà bạn muốn so sánh. Bạn có thể sử dụng ký tự đại diện (* và ?) để chỉ định nhiều file.
<Data2> Chỉ định vị trí và tên của file hoặc tập hợp các file thứ hai mà bạn muốn so sánh. Bạn có thể sử dụng ký tự đại diện (*?) để chỉ định nhiều file.
/d Hiển thị sự khác biệt ở định dạng thập phân. (Định dạng mặc định là hệ thập lục phân).
/a Hiển thị sự khác biệt dưới dạng ký tự.
/l Hiển thị số dòng nơi có sự khác biệt, thay vì hiển thị độ lệch byte.
/n=<Number> Chỉ so sánh số dòng được chỉ định cho từng file, ngay cả khi các file có kích thước khác nhau.
/c Thực hiện so sánh không phân biệt chữ hoa chữ thường.
/off[line] Xử lý các file có thuộc tính ngoại tuyến được đặt.
/? Hiển thị trợ giúp tại dấu nhắc lệnh.

Lưu ý

  • Cách lệnh comp xác định thông tin không khớp

Trong khi so sánh, lệnh comp hiển thị các thông báo xác định vị trí của thông tin không giống nhau giữa các file. Mỗi thông báo cho biết địa chỉ bộ nhớ offset của byte không bằng nhau và nội dung của các byte (theo ký hiệu thập lục phân, trừ khi tham số dòng lệnh /a hoặc /d được chỉ định). Thông báo xuất hiện ở định dạng sau: 

Compare error at OFFSET xxxxxxxx
file1 = xx
file2 = xx

Sau 10 lần so sánh không khớp nhau, lệnh comp sẽ dừng so sánh các file và hiển thị thông báo sau:

10 Mismatches - ending compare
  • Xử lý các trường hợp đặc biệt cho Data1Data2
    • Nếu bạn bỏ qua các thành phần cần thiết của Data1 hoặc Data2 hoặc nếu bạn bỏ qua Data2, lệnh comp sẽ nhắc bạn về thông tin còn thiếu.
    • Nếu Data1 chỉ chứa ký tự ổ đĩa hoặc tên thư mục, mà không có tên file, lệnh comp sẽ so sánh tất cả các file trong thư mục được chỉ định với file được chỉ định trong Data1.
    • Nếu Data2 chỉ chứa một ký tự ổ đĩa hoặc tên thư mục, tên file mặc định cho Data2 giống như trong Data1.
    • Nếu lệnh comp không thể tìm thấy (các) file bạn chỉ định, nó sẽ nhắc bạn bằng một thông báo để xác định xem bạn có muốn so sánh các file khác hay không.
  • So sánh các file ở các vị trí khác nhau

Lệnh comp có thể so sánh các file trên cùng một ổ đĩa hoặc trên các ổ đĩa khác nhau, và trong cùng một thư mục hoặc trong các thư mục khác nhau. Khi so sánh các file, nó sẽ hiển thị vị trí và tên file của chúng.

  • So sánh các file có cùng tên

Các file mà bạn so sánh có thể có cùng tên file, miễn là chúng nằm trong các thư mục khác nhau hoặc trên các ổ đĩa khác nhau. Nếu bạn không chỉ định tên file cho Data2, tên file mặc định cho Data2 giống với tên file trong Data1. Bạn có thể sử dụng ký tự đại diện (*?) để chỉ định tên file.

  • So sánh các file có kích thước khác nhau

Bạn phải chỉ định tham số /n để so sánh các file có kích thước khác nhau. Nếu kích thước file khác nhau và tham số /n không được chỉ định, lệnh comp sẽ hiển thị thông báo sau:

 

Files are different sizes
Compare more files (Y/N)?

Để so sánh các file này, nhấn N để dừng lệnh comp. Sau đó, chạy lại lệnh comp với tùy chọn /n để so sánh chỉ phần đầu của mỗi file.

  • So sánh các file tuần tự

Nếu bạn sử dụng ký tự đại diện (*?) để chỉ định nhiều file, lệnh comp sẽ tìm file đầu tiên khớp với Data1 và so sánh file đó với file tương ứng trong Data2, nếu nó tồn tại. Lệnh comp báo cáo kết quả so sánh cho mỗi file phù hợp với Data1. Khi hoàn thành, lệnh comp hiển thị thông báo sau:

Compare more files (Y/N)?

Để so sánh các file khác, hãy nhấn Y. Lệnh comp sẽ nhắc bạn về vị trí và tên của file mới. Để dừng so sánh, nhấn N. Khi bạn nhấn Y, lệnh comp sẽ nhắc bạn về các tùy chọn dòng lệnh để sử dụng. Nếu bạn không chỉ định bất kỳ tùy chọn dòng lệnh nào, lệnh comp sẽ sử dụng các tùy chọn bạn đã chỉ định trước đó.

Ví dụ

Để so sánh nội dung của thư mục C:\Reports với thư mục sao lưu \\Sales\Backup\April, hãy nhập:

comp c:\reports \\sales\backup\april

Để so sánh 10 dòng đầu tiên của các file văn bản trong thư mục \Invoice và hiển thị kết quả theo định dạng thập phân, hãy nhập:

comp \invoice\*.txt \invoice\backup\*.txt /n=10 /d

Xem thêm:

Thứ Ba, 30/10/2018 09:42
51 👨 83