packages icon



 DIFF(1)                        diffutils 3.3                        DIFF(1)
 User Commands                                                 User Commands

                                 March 2013



 NAME
      diff - compare files line by line

 SYNOPSIS
      diff [OPTION]... FILES

 DESCRIPTION
      Compare FILES line by line.

      Mandatory arguments to long options are mandatory for short options
      too.

      --normal
           output a normal diff (the default)

      -q, --brief
           report only when files differ

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

      -c, -C NUM, --context[=NUM]
           output NUM (default 3) lines of copied context

      -u, -U NUM, --unified[=NUM]
           output NUM (default 3) lines of unified context

      -e, --ed
           output an ed script

      -n, --rcs
           output an RCS format diff

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

      -W, --width=NUM
           output at most NUM (default 130) print columns

      --left-column
           output only the left column of common lines

      --suppress-common-lines
           do not output common lines

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

      -F, --show-function-line=RE



                                    - 1 -      Formatted:  December 26, 2024






 DIFF(1)                        diffutils 3.3                        DIFF(1)
 User Commands                                                 User Commands

                                 March 2013



           show the most recent line matching RE

      --label LABEL
           use LABEL instead of file name (can be repeated)

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

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

      --tabsize=NUM
           tab stops every NUM (default 8) print columns

      --suppress-blank-empty
           suppress space or tab before empty output lines

      -l, --paginate
           pass output through `pr' to paginate it

      -r, --recursive
           recursively compare any subdirectories found

      -N, --new-file
           treat absent files as empty

      --unidirectional-new-file
           treat absent first files as empty

      --ignore-file-name-case
           ignore case when comparing file names

      --no-ignore-file-name-case
           consider case when comparing file names

      -x, --exclude=PAT
           exclude files that match PAT

      -X, --exclude-from=FILE
           exclude files that match any pattern in FILE

      -S, --starting-file=FILE
           start with FILE when comparing directories

      --from-file=FILE1
           compare FILE1 to all operands; FILE1 can be a directory

      --to-file=FILE2
           compare all operands to FILE2; FILE2 can be a directory



                                    - 2 -      Formatted:  December 26, 2024






 DIFF(1)                        diffutils 3.3                        DIFF(1)
 User Commands                                                 User Commands

                                 March 2013



      -i, --ignore-case
           ignore case differences in file contents

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

      -Z, --ignore-trailing-space
           ignore white space at line end

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

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

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

      -I, --ignore-matching-lines=RE
           ignore changes whose lines all match RE

      -a, --text
           treat all files as text

      --strip-trailing-cr
           strip trailing carriage return on input

      -D, --ifdef=NAME
           output merged file with `#ifdef NAME' diffs

      --GTYPE-group-format=GFMT
           format GTYPE input groups with GFMT

      --line-format=LFMT
           format all input lines with LFMT

      --LTYPE-line-format=LFMT
           format LTYPE input lines with LFMT

           These format options provide fine-grained control over the output

           of diff, generalizing -D/--ifdef.

      LTYPE is `old', `new', or `unchanged'.
           GTYPE is LTYPE or `changed'.

           GFMT (only) may contain:

      %<   lines from FILE1



                                    - 3 -      Formatted:  December 26, 2024






 DIFF(1)                        diffutils 3.3                        DIFF(1)
 User Commands                                                 User Commands

                                 March 2013



      %>   lines from FILE2

      %=   lines common to FILE1 and FILE2

      %[-][WIDTH][.[PREC]]{doxX}LETTER
           printf-style spec for LETTER

           LETTERs are as follows for new group, lower case for old group:

      F    first line number

      L    last line number

      N    number of lines = L-F+1

      E    F-1

      M    L+1

      %(A=B?T:E)
           if A equals B then T else E

           LFMT (only) may contain:

      %L   contents of line

      %l   contents of line, excluding any trailing newline

      %[-][WIDTH][.[PREC]]{doxX}n
           printf-style spec for input line number

           Both GFMT and LFMT may contain:

      %%   %

      %c'C'
           the single character C

      %c'\OOO'
           the character with octal code OOO

      C    the character C (other characters represent themselves)

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

      --horizon-lines=NUM
           keep NUM lines of the common prefix and suffix




                                    - 4 -      Formatted:  December 26, 2024






 DIFF(1)                        diffutils 3.3                        DIFF(1)
 User Commands                                                 User Commands

                                 March 2013



      --speed-large-files
           assume large files and many scattered small changes

      --help
           display this help and exit

      -v, --version
           output version information and exit

      FILES are `FILE1 FILE2' or `DIR1 DIR2' or `DIR FILE...' or `FILE...
      DIR'.  If --from-file or --to-file is given, there are no restrictions
      on FILE(s).  If a FILE is `-', read standard input.  Exit status is 0
      if inputs are the same, 1 if different, 2 if trouble.

 AUTHOR
      Written by Paul Eggert, Mike Haertel, David Hayes, Richard Stallman,
      and Len Tower.

 REPORTING BUGS
      Report bugs to: bug-diffutils@gnu.org
      GNU diffutils home page: <http://www.gnu.org/software/diffutils/>
      General help using GNU software: <http://www.gnu.org/gethelp/>

 COPYRIGHT
      Copyright c 2011 Free Software Foundation, Inc.  License GPLv3+: GNU
      GPL version 3 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
      wdiff(1), cmp(1), diff3(1), sdiff(1), patch(1)

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

           info diff

      should give you access to the complete manual.













                                    - 5 -      Formatted:  December 26, 2024