So sánh 2 file text, file văn bản trên Linux Terminal

Giả sử nếu mình muốn so sánh sự khác giữa 2 phiên người nghịch dạng của một file text (file văn người nghịch dạng) nhưng chưa nặng tay nhữngh tiến hành, trong nội dung bài viết tại đây Taimienphi.vn sẽ hướng dẫn người nghịch nhữngh so sánh 2 file text trên Linux Terminal.

Để so sánh 2 phiên người nghịch dạng của một file, tổng thể những gì người nghịch cần là sử dụng lệnh diff. Tham khảo tiếp nội dung bài viết tại đây của Taimienphi.vn để tìm hiểu nhữngh so sánh 2 file text trên Linux Terminal trải qua lệnh diff thế nào nhé.

so sanh 2 file text file van ban tren linux terminal

So sánh 2 file text trên Linux Terminal

một. Sử dụng lệnh diff

Lệnh diff so sánh 2 file và tạo danh sách liệt kê những điểm khác lạ giữa 2 file. Nói chuẩn chỉnh xác hơn lệnh này tạo danh sách những thay đổi cần được tiến hành cho file lần thứ nhất để khớp với file thứ hai.

Lệnh diff được thiết kế để tìm ra sự khác lạ trong số những file mã Power và để tạo Output đầu ra với thể đọc được và được thực thi bởi những chương trình khác, chẳng hạn như lệnh patch.

Tham khảo tiếp nội dung tại đây để tìm hiểu nhữngh sử dụng lệnh diff để so sánh 2 file text nhé.

Đầu tiên chúng ta sẽ phân tích file text thứ 2. Thứ tự những file trên dòng sản phẩm lệnh xác định file diff nào là file lần thứ nhất và file nào là file thứ 2.

Trong ví dụ tại đây, alphamột là file lần thứ nhất và alpha2 là file thứ hai. Cả 2 file này đều chứa người nghịch dạngg chữ mẫu ngữ âm, nhưng file thứ 2 (tức alpha2) được thay thay đổi đổi thêm một trong mỗi chỉnh sửa để ko trùng với file thứ nhất.

Để so sánh 2 file text này, chúng ta sử dụng lệnh diff. Nhập diff + tầm nhữngh + tên file lần thứ nhất + tầm nhữngh + tên file thứ 2 rồi nhấn Enter:

diff alphamột alpha2

so sanh 2 file text file van ban tren linux terminal 2

Bước tiếp theo chúng ta sẽ tiến hành mở xẻ Output đầu ra. Các sự khác lạ giữa 2 file sẽ được liệt kê lần lượt trong mỗi cột và được khắc ghi nhãn. Nhãn chứa những số và chữ mẫu nằm giữa, chẳng hạn như 4c4. Số lần thứ nhất là loại lần thứ nhất trong alphamột, số thứ 2 là loại thứ 2 trong alpha2. Các chữ mẫu ở giữa với ý nghĩa:

c: dòng sản phẩm trong file lần thứ nhất cần được thay đổi để khớp với dòng sản phẩm trong file thứ 2.

d: dòng sản phẩm trong file lần thứ nhất phmàn được xóa đi để khớp với file thứ 2.

a: nội dung thay thay đổi đổi phmàn được thêm vào file lần thứ nhất để khớp với file thứ 2.

Trong ví dụ trên, 4c4 với ý nghĩa là loại thứ 4 trong file lần thứ nhất (tức alphamột) phmàn được thay đổi để khớp với dòng sản phẩm thứ 4 trong file thứ 2, (tức file alpha2). Đây là việc khác lạ lần thứ nhất mà lệnh diff tìm thđó giữa 2 file.

Các dòng sản phẩm đầu tiên bằng (tham chiếu tới file lần thứ nhất), trong ví dụ là alphamột và đầu tiên bằng vàgt; refer to the second file, alpha2. Dòng cho chúng ta biết được Delta là nội dung của dòng sản phẩm thứ 4 trong alphamột. Dòng vàgt;Dave cho chúng ta biết được Dave là nội dung của dòng sản phẩm thứ 4 trong alpha2. Tức là chúng ta sẽ phmàn thay thế Delta bằng Dave trong dòng sản phẩm thứ 4 trong file alphamột để những dòng sản phẩm này khớp với cả 2 file.

Thay đổi tiếp theo được chỉ định là một2cmột2. Áp dụng logic tương tự, một2cmột2 tức là loại một2 trong alphamột chứa từ Lima, nhưng dòng sản phẩm một2 trong alpha2 chứa từ Linux.

Thay đổi thứ 3 nói tới một dòng sản phẩm đã biết thành xóa khỏi alpha2. Nhãn 2mộtd20 được gimàn mã, hiểu là “dòng sản phẩm 2một trong file lần thứ nhất phmàn được xóa để cả 2 file đồng điệu hóa từ dòng sản phẩm 20 trở đi”. Dòng hiển thị cho chúng ta nội dung của dòng sản phẩm phmàn được xóa trong alphamột.

Sự khác lạ thứ 4 được khắc ghi là 26a26,28. Thay đổi này nói tới 3 dòng sản phẩm được thay thay đổi đổi thêm vào alpha2. Lưu ý số 26,28 trong nhãn. Số của 2 dòng sản phẩm được phân tách bằng dấu phẩy thể hiện phạm vi số dòng sản phẩm.

Trong ví dụ này, phạm vi đầu tiên từ dòng sản phẩm 26 tới dóng 28. Nhã được hiểu là “dòng sản phẩm 26 trong file lần thứ nhất, thêm dòng sản phẩm 26 tới 28 trong file thứ 2”. Lệnh sẽ hiển thị 3 dòng sản phẩm trong alpha2 cần phmàn thêm vào alphamột, chứa những từ Quirk, Strange và Charm.

2. So sánh 2 file text với giống nhau ko

Nếu chỉ muốn so sánh xem 2 file text liệu với giống nhau hay ko, chúng ta sử dụng thêm tùy mua sắm -s (report những file giống hệt nhau).

diff -s alphamột alpha3

so sanh 2 file text file van ban tren linux terminal 3

Ngoài ra chúng ta cũng với thể sử dụng tùy mua sắm -q (tóm tắt) để lđó mô tả ngắn gọn sự không giống nhau giữa 2 file.

diff -q alphamột alpha2

so sanh 2 file text file van ban tren linux terminal 4

Một điều cần chú ý là nếu 2 file là giống hệt nhau, tùy mua sắm -q (tóm tắt) sẽ ko trả về ngẫu nhiên report nào cả.

3. So sánh 2 file text với không giống nhau ko

Tùy mua sắm -y sử dụng những bố cạnh không giống nhau để mô tả sự khác lạ giữa 2 file. Sử dụng tùy mua sắm -W để giới hạn con số cột được hiển thị để việc đọc kết quả Output đầu ra giậtn giản và giậtn giản hơn.

Chẳng hạn sử dụng lệnh diff tại đây để tạo kết quả hiển thị hai phía và giới hạn trong 70 cột:

diff -y -W 70 alphamột alpha2

so sanh 2 file text file van ban tren linux terminal 5

File lần thứ nhất trong dòng sản phẩm lệnh, alphamột được hiển thị phía trái và dòng sản phẩm thứ 2 trên dòng sản phẩm lệnh, alpha2 được hiển thị ở phía phmàn. Các dòng sản phẩm của mỗi file được hiển thị cạnh nhau. Các ký tự chỉ báo và những dòng sản phẩm này trong alpha2 biểu thị thay đổi, xóa hoặc thêm nội dung.

|: một dòng sản phẩm đã được thay đổi trong file thứ 2.

một dòng sản phẩm đã biết thành xóa khỏi file thứ 2.

vàgt;: một dòng sản phẩm được thêm vào file thứ 2 mà ko được thêm vào file lần thứ nhất.

Nếu thích tóm tắt những thay đổi, sự khác lạ giữa 2 file, chúng ta với thể sử dụng tùy mua sắm –suppress-common-lines. Tùy mua sắm này buộc lệnh diff liệt kê những dòng sản phẩm đã thay đổi, thêm hoặc xóa nội dung.

diff -y -W 70 –suppress-common-lines alphamột alpha2

so sanh 2 file text file van ban tren linux terminal 6

4. Thêm màu sắc cho lệnh

Tiện ích với tên thường gọi colordiff, được sử dụng để thêm màu sắc cho Output đầu ra lệnh diff, giúp cho việc tìm ra dòng sản phẩm nào với sự khác lạ giậtn giản và giậtn giản hơn.

Nếu đang sử dụng Ubuntu hoặc những người nghịch dạng phân phối phối kết hợp Debian khác, sử dụng apt-get để thiết lập gói này trên khối khối server. Trên những người nghịch dạng phân phối Linux khác, chính ta sử dụng chương trình quản trị những gói thư viện (package management) để thiết lập tiện lợi.

sudo apt-get install colordiff

Sử dụng colordiff tương tự giống như nhữngh mà chúng ta sử dụng diff.

so sanh 2 file text file van ban tren linux terminal 7

Thực tế, colordiff là trình xung quanh cho diff, và diff tiến hành tổng thể những thao tác phía sau hậu trường. Vì vậy tổng thể những tùy mua sắm diff đều hoạt động và sinh hoạt với colordiff.

so sanh 2 file text file van ban tren linux terminal 8

5. Cung cấp một trong mỗi ngữ cảnh

Để tìm một trong mỗi thay đổi giữa 2 file, thay vì liệt kê và hiển thị tổng thể những thay đổi, chúng ta với thể yêu cầu diff phục vụ nhu yếu một trong mỗi ngữ cảnh.

Để làm được điều này, chúng ta với 2 tùy mua sắm. Các tùy mua sắm này được sử dụng để hiển thị một trong mỗi dòng sản phẩm trước và sau mỗi dòng sản phẩm với sự thay đổi, và chúng ta với thể giậtn giản và giậtn giản tìm ra sự khác lạ rõ ràng giữa 2 file.

Cách lần thứ nhất là sử dụng tùy mua sắm -c (sao chép ngữ cảnh):

colordiff -c alphamột alpha2

so sanh 2 file text file van ban tren linux terminal 9

Đầu ra diff này với một tiêu đề. Tiêu đề liệt kê 2 tên file và số lần chỉnh sửa những file. Dấu hoa thị (*) trước tên của file lần thứ nhất và dấu gạch ngang (-) trước tên của file thứ 2. Dấu hoa thị và dấu gạch ngang được sử dụng để chỉ ra Output đầu ra của file.

Dòng với dấu hoa thị và số một,7 ở giữa cho thấy những thay đổi từ dòng sản phẩm một tới 7 trong file lần thứ nhất (alphamột). Chữ Delta được gắn cờ khắc ghi thay đổi, ngoài ra nó còn với dấu chấm than (!) ngoài và được khắc ghi red color. Có 3 dòng sản phẩm text ko thay đổi được hiển thị trước và sau dòng sản phẩm đó để chúng ta với thể giậtn giản và giậtn giản trông thđó ngữ cảnh của dòng sản phẩm đó trong file.

Dòng với dấu gạch ngang tất nhiên một,7 ở giữa cho thấy chúng ta đang xem những dòng sản phẩm từ một tới 7 trong file alpha2. Chữ Dave trên dòng sản phẩm thứ 4 được khắc ghi là thay đổi.

3 dòng sản phẩm ngữ cảnh trên và dưới mỗi một thay đổi là giá trị trị mặc định. Nếu muốn, người nghịch với thể chỉ định số dòng sản phẩm này. Để làm được điều này, sử dụng tùy mua sắm -C (sao chép ngữ cảnh) và thêm số dòng sản phẩm:

colordiff -C 2 alphamột alpha2

so sanh 2 file text file van ban tren linux terminal 10

Tùy mua sắm diff thứ 2 để phục vụ nhu yếu ngữ cảnh là -u (ngữ cảnh thống nhất):

colordiff -u alphamột alpha2

so sanh 2 file text file van ban tren linux terminal 11

Như đã nói ở trên, Output đầu ra với chứa tiêu đề, hiển thị tên 2 file và số lần chỉnh sửa những file. Có dấu gạch ngang (-) trước tên alphamột và dấu và (+) trước tên alpha2.

Điều này tạo cho chúng ta biết dấu gạch ngang được sử dụng để chỉ alphamột và dấu và để chỉ alpha2. Ngoài ra còn với những dòng sản phẩm đầu tiên bằng ký hiệu (@). Các dòng sản phẩm này khắc ghi sự khác lạ giữa 2 file.

3 dòng sản phẩm trước và sau dòng sản phẩm được khắc ghi không giống nhau, cho thấy ngữ cảnh của dòng sản phẩm thay đổi. Dòng từ file alphamột được đầu tiên bằng dấu gạch ngang (-), dòng sản phẩm từ file alpha2 đầu tiên bằng dấu và (+). Với tùy mua sắm này, chúng ta chỉ mất 8 dòng sản phẩm để liệt kê sự khác lạ trong Khi tùy mua sắm trên cần tới một5 dòng sản phẩm.

Như người nghịch mong đợi, Shop chúng tôi với thể yêu cầu diff phục vụ nhu yếu chuẩn chỉnh xác con số dòng sản phẩm hình ảnh hợp nhất mà Shop chúng tôi muốn xem. Để tiến hành việc này, hãy sử dụng tùy mua sắm -U (hình ảnh thống nhất) với vốn hoa U U và phục vụ nhu yếu con số dòng sản phẩm mình muốn:

Nếu muốn, người nghịch với thể sử dụng tùy mua sắm -U (chữ U viết hoa) để phục vụ nhu yếu số dòng sản phẩm ngữ cảnh nhu cầu.

colordiff -U 2 alphamột alpha2

so sanh 2 file text file van ban tren linux terminal 12

6. Bỏ qua tầm Trắng, chữ viết hoa viết thường

Thử so sánh 2 file là test4 và test5. Các file này với chứa tên của 6 siêu hero.

colordiff -y -W 70 test4 test5

so sanh 2 file text file van ban tren linux terminal 13

Kết quả trả về cho thđó diff ko tìm thđó sự khác lạ nào ở những dòng sản phẩm Black Widow, Spider-Man và Thor. Lệnh khắc ghi những thay đổi ở những dòng sản phẩm Captain America, Ironman và The Hulk.

Trong test5, Hulk được viết bằng chữ “h” thường và Captain America với thêm tầm trống ở giữa “Captain” và “America”. Sự khác lạ ở dòng sản phẩm Ironman ở đấy là tầm Trắng.

Để bỏ qua sự khác lạ rõ ràng giữa 2 file, chúng ta với thể sử dụng:

-i: bỏ qua sự khác lạ giữa viết hoa và viết thường.

-Z: bỏ qua dấu nhữngh, tầm Trắng.

-b: bỏ qua những thay đổi về con số những tầm Trắng.

-w: bỏ qua những thay đổi tầm Trắng.

Tiếp theo yêu cầu diff kiểm tra lại 2 file này một đợt tiếp nhữa, nhưng bỏ qua sự khác lạ giữa viết hoa và viết thường:

colordiff -i -y -W 70 test4 test5

so sanh 2 file text file van ban tren linux terminal 14

Các dòng sản phẩm The Hulk và the hulk sẽ là giống nhau và ko được khắc ghi chữ thường h. Tiếp theo, sử dụng lệnh tại đây để bỏ qua tầm Trắng:

colordiff -i -Z -y -W 70 test4 test5

so sanh 2 file text file van ban tren linux terminal 15

Sử dụng lệnh tại đây để yêu cầu diff bỏ qua sự khác lạ giữa viết hoa và viết thường và tổng thể những tầm Trắng:

colordiff -i -w -y -W 70 test4 test5

so sanh 2 file text file van ban tren linux terminal 16

Bằng nhữngh nói với diff bỏ qua những sự khác lạ mà chúng ta ko cần phmàn quyên tâm tới để khớp những file với nhau.

Ngoài ra lệnh diff còn với nhiều tùy mua sắm khác, tuy nhiên phần lớn những tùy mua sắm này liên quan tới việc tạo Output đầu ra mà máy với thể đọc được.

Bài viết trên đây Taimienphi.vn vừa hướng dẫn người nghịch nhữngh so sánh 2 file text, file văn người nghịch dạng trên Linux Terminal. Ngoài ra nếu với ngẫu nhiên thắc mắc hoặc thắc mắc nào cần gimàn đáp, người nghịch đọc với thể để lại ý kiến của tôi trong phần comment dưới nội dung bài viết nhé.

https://thuthuat.taimienphi.vn/so-sanh-2-file-text-file-van-ban-tren-linux-terminal-46059n.aspx
quý khách với thể tìm hiểu về nhữngh tạo file text bằng Terminal trên Linux được hướng dẫn rõ ràng trên Taimienphi, tạo file text bằng Terminal trên Linux cũng tương đối giậtn thuần, người nghịch với thể tuân theo nhanh khô chóng.

Xem thêm bài viết thuộc chuyên mục: Wiki