DIFF(1)

TÊN
diff - compare files line by line

TÓM TẮT
diff [OPTION]... FILES

MÔ TẢ
So sánh các TẬP-TIN theo từng dòng.

Tùy chọn dài yêu cầu đối số thì tùy chọn ngắn cũng vậy.

--normal
    xuất ra định dạng diff thông thường (mặc định)

-q, --brief
    chỉ báo cáo nếu những tập tin khác với nhau

-s, --report-identical-files
    báo cáo khi có hai tập tin bằng nhau

-c, -C NUM, --context[=NUM]
    xuất ra SỐ (mặc định là 3) dòng của ngữ cảnh

-u, -U NUM, --unified[=NUM]
    xuất ra SỐ (mặc định là 3) dòng của ngữ cảnh hợp nhất

-e, --ed
    xuất tập lệnh loại ed(1)

-n, --rcs
    xuất dữ liệu khác biệt sử dụng định dạng RCS

-y, --side-by-side
    xuất ra theo định dạng hai cột

-W, --width=NUM
    kết xuất nhiểu nhất là SỐ cột (mặc định là 130)

--left-column
    kết xuất chỉ cột bên trái của các dòng chung nhau

--suppress-common-lines
    không kết xuất các dòng chung nhau

-p, --show-c-function
    hiển thị cái mà từng hàm C thay đổi ở trong đó

-F, --show-function-line=RE
    hiển thị những dòng gần nhất khớp với RE

--label NHÃN
    sử dụng NHÃN thay vì tên tập tin và dấu thời gian (có thể được lặp lại)

-t, --expand-tabs
    khai triển ký tự tab thành các khoảng trắng khi kết xuất

-T, --initial-tab
    tạo khoảng tab cho dòng bằng cách thêm một tab vào trước

--tabsize=NUM
    định khoảng cách tab sau mỗi SỐ cột đã in ra (mặc định là 8)

--suppress-blank-empty
    thu hồi khoảng cách hay tab đằng trước dòng kết xuất trống

-l, --paginate
    chuyển dữ liệu kết xuất qua pr(1) để dàn trang nó

-r, --recursive
    so sánh đệ qui mọi thư mục con đã tìm thấy

--no-dereference
    không theo liên kết mềm

-N, --new-file
    coi tập tin vắng mặt là trống

--unidirectional-new-file
    coi tập tin đầu mà vắng mặt là trống

--ignore-file-name-case
    bỏ qua chữ HOA/thường khi so sánh các tên tập tin

--no-ignore-file-name-case
    phân biệt HOA/thường khi so sánh tên tập tin

-x, --exclude=PAT
    loại trừ các tập tin khớp với MẪU ấy

-X, --exclude-from=TẬP_TIN
    loại trừ mọi tập tin khớp với bất cứ mẫu nào trong TẬP TIN ấy

-S, --starting-file=FILE
    bắt đầu với TẬP TIN khi so sánh nhiều thư mục

--from-file=FILE1
    so TẬP TIN 1 với tất cả toán hạng; TẬP TIN 1 có thể là thư mục

--to-file=FILE2
    So tất cả toán hạng với TẬP TIN 2; TẬP TIN 2 có thể là thư mục

-i, --ignore-case
    không phân biệt chữ HOA/thường trong nội dung tập tin

-E, --ignore-tab-expansion
    bỏ qua mọi thay đổi do mở rộng tab

-Z, --ignore-trailing-space
    bỏ qua tất cả dấu cách ở cuối dòng

-b, --ignore-space-change
    bỏ qua thay đổi gây ra bởi nhóm dấu cách

-w, --ignore-all-space
    bỏ qua tất cả dấu cách

-B, --ignore-blank-lines
    bỏ qua thay đổi do dòng trống

-I, --ignore-matching-lines=RE
    bỏ qua thay đổi do mà mọi dòng khớp với RE

-a, --text
    coi mọi tập tin là văn bản thường

--strip-trailing-cr
    cắt bỏ ký tự về đầu dòng (cr) theo sau khi nhập

-D, --ifdef=NAME
    kết xuất tập tin đã trộn với khác biệt “#ifdef TÊN”

--GTYPE-group-format=GFMT
    định dạng nhập GTYPE với GFMT

--line-format=LFMT
    định dạng tất cảc các dòng vào với LFMT

--LTYPE-line-format=LFMT
    định dạng nhập LTYPE với LFMT

    Nhưng tùy chọn đó điểu khiển kết xuất ra định dạng diff

    đẹp hơn, khái quát hóa -D/--ifdef.

LTYPE là “cũ”, “mới”, hoặc “chưa thay đổi”.
    GTYPE là LTYPE hoặc “thay đổi rồi”.

    GFMT chỉ có thể chứa:

%<  dòng từ TẬP_TIN1

%>  dòng từ TẬP_TIN2

%=  dòng chung của TẬP_TIN1 và TẬP_TIN2

%[-][ĐỘ_RỘNG][.[PREC]]{doxX}CHỮ
    dạng printf cho CHỮ ấy

    CHỮ HOA cho nhóm mới, chữ thường cho nhóm cũ:

F   số dòng đầu

L   số dòng cuối cùng

N   tổng số dòng = L-F+1

E   F-1

M   L+1

%(A=B?T:E)
    nếu A bằng B thì T nếu không thì E

    LFMT chỉ có thể chứa:

%L  nội dung của dòng

%l  nội dung của dòng, loại trừ ký tự dòng mới nào đi theo

%[-][Đ_RỘNG][.[PREC]]{doxX}n
    đặc tả dạng printf cho số dòng đầu vào

    Cả GFMT và LFMT có thể chứa:

%%  %

%c'C'
    ký tự riêng lẻ C

%c'\OOO'
    ký tự có mã bát phân OOO

C   ký tự C (các ký tự khác đại diện cho chính chúng)

-d, --minimal
    cố tìm một thay đổi nhỏ

--horizon-lines=NUM
    giữ SỐ dòng của tiền tố và hậu tố chung

--speed-large-files
    Giả định _tập tin lớn_ và nhiều thay đổi nhỏ rải rác (_tốc độ_).

--color[=KHI]
    color output; WHEN is 'never', 'always', or 'auto'; plain --color means --color='auto'

--palette=PALETTE
    các màu được dùng khi --color kích hoạt; PALETTE là một danh sách terminfo capabilities ngăn cách bằng dấu phẩy

--help
    hiển thị trợ giúp này rồi thoát

-v, --version
    đưa ra thông tin phiên bản rồi thoát

CÁC TẬP TIN là “TẬP_TIN1 TẬP_TIN2” hoặc “THƯ_MỤC1 THƯ_MỤC2” hoặc “THƯ_MỤC TẬP_TIN” hay “TẬP_TIN THƯ_MỤC”. Nếu đưa ra tùy chọn --from-file (từ tập tin) hay --to-file (vào tập tin) thì không có giới hạn TẬP TIN. Nếu TẬP-TIN là “-”, thì đọc từ đầu vào tiêu chuẩn. Trạng thái thoát là số 0 nếu hai đầu vào bằng nhau, số 1 nếu là khác nhau và số 2 nếu gặp lỗi.

TÁC GIẢ
Tác giả: Paul Eggert, Mike Haertel, David Hayes, Richard Stallman, và Len Tower.

THÔNG BÁO LỖI
Thông báo lỗi nào cho: <bug-diffutils@gnu.org>; Thông báo lỗi dịch nào cho: <http://translationproject.org/team/vi.html>
Trang chủ GNU diffutils: <https://www.gnu.org/software/diffutils/>
Trợ giúp chung về sử dụng phần mềm GNU: <https://www.gnu.org/gethelp/>

BẢN QUYỀN
Copyright © 2025 Free Software Foundation, Inc. Giấy phép GPL pb3+ : Giấy phép Công cộng GNU phiên bản 3 hay sau <https://gnu.org/licenses/gpl.html>.
Đây là phần mềm tự do: bạn có quyền sửa đổi và phát hành lại nó. KHÔNG CÓ BẢO HÀNH GÌ CẢ, với điều khiển được pháp luật cho phép.

XEM THÊM
wdiff(1), cmp(1), diff3(1), sdiff(1), patch(1)

Tài liệu hướng dẫn đầy đủ về diff được bảo trì dưới dạng một sổ tay Texinfo. Nếu chương trình info và diff được cài đặt đúng ở địa chỉ của bạn thì câu lệnh

    info diff

nên cho phép bạn truy cập đến toàn bộ sổ tay.

DỊCH
Bản dịch tiếng Việt của trang hướng dẫn này do thực hiện.

Bản dịch này là Tài liệu Miễn phí; đọc Giấy phép Công cộng GNU Phiên bản 3 (https://www.gnu.org/licenses/gpl-3.0.html) hoặc mới hơn để biết các điều khoản bản quyền. Chúng tôi cho rằng KHÔNG CÓ TRÁCH NHIỆM PHÁP LÝ.

Nếu bạn tìm thấy một số sai sót trong bản dịch của trang hướng dẫn này, vui lòng gửi thư đến TODO.