diff 是 Linux 和 Unix 系统中的一个命令行工具,用于比较两个文件的内容,并显示它们之间的差异。diff 命令非常有用,特别是在代码审查、文件同步和版本控制中。
基本用法
diff [选项] 文件1 文件2
常见参数:
-i 或 --ignore-case:忽略大小写差异。
-w 或 --ignore-all-space:忽略所有空格差异。
-b 或 --ignore-space-change:忽略空格数量的变化。
-B 或 --ignore-blank-lines:忽略空行的差异。
-q 或 --brief:仅报告文件是否不同,不显示具体内容差异。
-r 或 --recursive:递归比较目录中的文件。
-N 或 --new-file:将不存在的文件视为空文件进行比较。
-u 或 --unified:生成统一格式的输出,这是最常用的格式之一,特别是在补丁文件中。
-c 或 --context:生成上下文格式的输出,显示几行上下文以帮助理解差异。
-l 或 --paginate:将输出分页显示(适用于有分页器的终端)。
--side-by-side:并排显示文件差异。
示例:
忽略大小写
diff -i file1.txt file2.txt
比较
diff file1.txt file2.txt
统一格式输出
diff -u file1.txt file2.txt
并排格式输出
diff log2014.log log2013.log -y -W 50