User Tools

Site Tools


diff_notes

ignore subdirectories

One way is to call diff without the –recursive (-r) option and use grep to filter out the unwanted messages:

 % diff dir1 dir2 | grep -v "^Only in "

or

 % diff -q dir1 dir2 | grep -v "^Only in "

See https://stackoverflow.com/questions/30446490/diff-only-compare-files-and-ignore-subdirectories/ for some sample tests using this idea.

diff word by word

git diff --word-diff --no-index -- foo bar

or

git diff -U0 --word-diff --no-index -- foo bar

You can run this command even if the files are not part of a git repository.

Ref:- https://unix.stackexchange.com/a/330807/198064

Related commands:

  • git diff --no-index --color-words -- foo bar - to diff word by word
  • git diff --no-index --color-words=. -- foo bar - to diff character by character

head and diff

To diff headers of two files without creating any temporary files

% diff <(head -n 1 foo.20170102) <(head -n 1 foo.20170104)

ignore newline endings

diff --strip-trailing-cr file1 file2
diff_notes.txt · Last modified: 2024/05/14 02:44 by admin