Tôi muốn có được số dòng chính xác trong đầu ra của diff (cụ thể là với -y
và --suppress-common-lines
tùy chọn). Sử dụng đơn giản wc -l
không không làm việc, bởi vì nếu cả hai tập tin kết thúc mà không một dòng mới và dòng cuối cùng của họ là khác nhau wc -l
sẽ không được tính dòng cuối cùng.
Có một giải pháp đơn giản và hiệu quả để tránh điều này?
Ví dụ: nếu bạn có tệp "a":
a
b
c
d #no newline here
Và B":
a
b
c
D #no newline here
Đầu ra là:
$ diff -y --suppress-common-lines a b | wc -l
0
Điều này rõ ràng là không chính xác vì diff
không xuất ra một dòng.