sdiff - macOS


Overview

sdiff is a command-line tool used to create a side-by-side visual comparison of two files, highlighting the differences between them. It’s commonly used for comparing text files, source code, and other types of structured data.

Syntax

sdiff [options] file1 file2

Options/Flags

  • -a, –left-column-first: Print the left column first.
  • -b, –show-brief: Show only a summary of the differences.
  • -c, –context: Show some context around the differences.
  • -e, –expand-tabs: Expand tabs in the files.
  • -f, –file-format=FORMAT: Specify the file format (e.g., “diff”, “rcs”, “svn”).
  • -i, –ignore-all-space: Ignore all whitespace changes.
  • -l, –left-output: Output the left file to a file.
  • -r, –right-output: Output the right file to a file.
  • -s, –suppress-common-lines: Suppress lines that are the same in both files.
  • -t, –width=WIDTH: Set the width of the output.
  • -w, –ignore-blank-lines: Ignore blank lines.
  • -y, –side-by-side: Display the files side-by-side.

Examples

  • Compare two files with context:
sdiff -c file1 file2
  • Create a side-by-side comparison:
sdiff -y file1 file2
  • Ignore all whitespace changes:
sdiff -i file1 file2

Common Issues

  • Empty output: Ensure that the files have actual differences or that the options are set appropriately.
  • Incorrect formatting: Specify the correct file format using the -f option.

Integration

  • Use with diff to get a more detailed view of the differences between two files.
  • Combine with sed or awk to process the output further.
  • diff: Compares two files and displays the differences in a text format.
  • cmp: Compares two files byte-by-byte.