ZDIFF(1)

NAME
zdiff - decompress and compare two files line by line

SYNOPSIS
zdiff [options] file1 [file2]

DESCRIPTION
zdiff compares two files and, if they differ, writes to standard output the differences line by line. A hyphen '-' used as a file argument means standard input. If any file given is compressed, its decompressed content is used. zdiff is a front end to the program diff and has the limitation that messages from diff refer to temporary file names instead of those specified.

'zdiff -v -V' prints the version of the diff program used.

The formats supported are bzip2, gzip, lzip, xz, and zstd.

zdiff compares file1 to file2. The standard input is used only if file1 or file2 refers to standard input. If file2 is omitted zdiff tries to compare file1 with the corresponding uncompressed file (if file1 is compressed), and then with the corresponding compressed files of the remaining formats until one is found. Some options only work if the diff program used supports them.

OPTIONS

-h, --help
    display this help and exit

-V, --version
    output version information and exit

-a, --text
    treat all files as text

-b, --ignore-space-change
    ignore changes in the amount of white space

-B, --ignore-blank-lines
    ignore changes whose lines are all blank

-c  use the context output format

-C, --context=<n>
    same as -c but use <n> lines of context

-d, --minimal
    try hard to find a smaller set of changes

-E, --ignore-tab-expansion
    ignore changes due to tab expansion

-i, --ignore-case
    ignore case differences

-M, --format=<list>
    process only the formats in <list>

-N, --no-rcfile
    don't read runtime configuration file

-O, --force-format=[<f1>][,<f2>]
    force one or both input formats

-p, --show-c-function
    show which C function each change is in

-q, --brief
    output only whether files differ

-s, --report-identical-files
    report when two files are identical

-t, --expand-tabs
    expand tabs to spaces in output

-T, --initial-tab
    make tabs line up by prepending a tab

-u  use the unified output format

-U, --unified=<n>
    same as -u but use <n> lines of context

-v, --verbose
    verbose mode (for --version)

-w, --ignore-all-space
    ignore all white space

-W, --width=<n>
    output at most <n> print columns (for -y)

-y, --side-by-side
    output in two columns

--bz2=<command>
    set compressor and options for bzip2 format

--gz=<command>
    set compressor and options for gzip format

--lz=<command>
    set compressor and options for lzip format

--xz=<command>
    set compressor and options for xz format

--zst=<command>
    set compressor and options for zstd format

Valid formats for options '-M' and '-O' are 'bz2', 'gz', 'lz', 'xz', 'zst', and 'un' for uncompressed.

EXIT STATUS
0 if inputs are identical, 1 if different, 2 if error.

REPORTING BUGS
Report bugs to zutils-bug@nongnu.org
Zutils home page: http://www.nongnu.org/zutils/zutils.html

COPYRIGHT
Copyright © 2026 Antonio Diaz Diaz. License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

SEE ALSO
The full documentation for zdiff is maintained as a Texinfo manual. If the info and zdiff programs are properly installed at your site, the command

    info zutils

should give you access to the complete manual.