Published Oct 05 2020
diff is a handy command. Suppose you have 2 files, which contain almost the same information, but you can’t find the difference between the two.
diff will process the files and will tell you what’s the difference.
Suppose you have 2 files:
moredogs.txt. The difference is that
moredogs.txt contains one more dog name:
diff dogs.txt moredogs.txt will tell you the second file has one more line, line 3 with the line
If you invert the order of the files, it will tell you that the second file is missing line 3, whose content is
-y option will compare the 2 files line by line:
-u option however will be more familiar to you, because that’s the same used by the Git version control system to display differences between versions:
Comparing directories works in the same way. You must use the
-r option to compare recursively (going into subdirectories):
In case you’re interested in which files differ, rather than the content, use the
There are many more options you can explore in the man page running
diff command works on Linux, macOS, WSL, and anywhere you have a UNIX environment
I wrote an entire book on this topic 👇