Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
DIFF(1)                          User Commands                         DIFF(1)

       diff - compare files line by line

       diff [OPTION]... FILES

       Compare files line by line.

       -i  --ignore-case
              Ignore case differences in file contents.

              Ignore case when comparing file names.

              Consider case when comparing file names.

       -E  --ignore-tab-expansion
              Ignore changes due to tab expansion.

       -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 RE  --ignore-matching-lines=RE
              Ignore changes whose lines all match RE.

              Strip trailing carriage return on input.

       -a  --text
              Treat all files as text.

       -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.

       --label LABEL
              Use LABEL instead of file name.

       -p  --show-c-function
              Show which C function each change is in.

       -F RE  --show-function-line=RE
              Show the most recent line matching RE.

       -q  --brief
              Output only whether files differ.

       -e  --ed
              Output an ed script.

              Output a normal diff.

       -n  --rcs
              Output an RCS format diff.

       -y  --side-by-side
              Output in two columns.

       -W NUM  --width=NUM
              Output at most NUM (default 130) print columns.

              Output only the left column of common lines.

              Do not output common lines.

       -D NAME  --ifdef=NAME
              Output merged file to show `#ifdef NAME' diffs.

              Similar, but format GTYPE input groups with GFMT.

              Similar, but format all input lines with LFMT.

              Similar, but format LTYPE input lines with LFMT.

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

              GFMT may contain:

       %<     lines from FILE1

       %>     lines from FILE2

       %=     lines common to FILE1 and FILE2

              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

              LFMT may contain:

       %L     contents of line

       %l     contents of line, excluding any trailing newline

              printf-style spec for input line number

              Either GFMT or LFMT may contain:

       %%     %

       %c'C'  the single character C

              the character with octal code OOO

       -l  --paginate
              Pass the output through `pr' to paginate it.

       -t  --expand-tabs
              Expand tabs to spaces in output.

       -T  --initial-tab
              Make tabs line up by prepending a tab.

              Tab stops are every NUM (default 8) print columns.

              Suppress space or tab before empty output lines.

       -r  --recursive
              Recursively compare any subdirectories found.

       -N  --new-file
              Treat absent files as empty.

              Treat absent first files as empty.

       -s  --report-identical-files
              Report when two files are the same.

       -x PAT  --exclude=PAT
              Exclude files that match PAT.

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

       -S FILE  --starting-file=FILE
              Start with FILE when comparing directories.

              Compare FILE1 to all operands.  FILE1 can be a directory.

              Compare all operands to FILE2.  FILE2 can be a directory.

              Keep NUM lines of the common prefix and suffix.

       -d  --minimal
              Try hard to find a smaller set of changes.

              Assume large files and many scattered small changes.

       -v  --version
              Output version info.

       --help Output this help.

       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 FILES.  If a FILE is `-', read standard input.  Exit status is 0 if
       inputs are the same, 1 if different, 2 if trouble.

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

       Report bugs to <>.

       Copyright (C) 2007 Free Software Foundation, Inc.  License GPLv3+: GNU
       GPL version 3 or later <>
       This is free software: you are free to change and redistribute it.
       There is NO WARRANTY, to the extent permitted by law.

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

              info diff

       should give you access to the complete manual.

diffutils 2.8.7-cvs              January 2008                          DIFF(1)


Want to link to this manual page? Use this URL:

home | help