Linux常用命令——diff 命令详解
命令介绍: diff 命令在Linux系统中用于比较文件的差异。它可以显示两个文件之间的行级别的区别,是版本控制和文件比较的重要工具。
基本语法:
diff [选项] 文件1 文件2
常用选项和参数:
- -u, --unified[=N]: 生成统一格式的输出,显示文件差异的上下文信息,默认显示3行上下文,可以通过 N 指定行数。
- 示例:
diff -u file1.txt file2.txt
输出:
--- file1.txt 2024-04-06 14:20:01.000000000 +0000
+++ file2.txt 2024-04-06 14:21:01.000000000 +0000
@@ -1,3 +1,3 @@
-line1
+line1_modified
line2
-line3
+line3_modified
- -c, --context[=N]: 生成上下文格式的输出,显示文件差异的上下文信息,默认显示3行上下文,可以通过 N 指定行数。
- 示例:
diff -c file1.txt file2.txt
输出:
--- file1.txt 2024-04-06 11:22:33.000000000 +0000
+++ file2.txt 2024-04-06 11:22:35.000000000 +0000
@@ -1,4 +1,4 @@
-Hello World
+Hello, World!
- -i, --ignore-case: 在比较时忽略大小写差异。
- 示例:
diff -i file1.txt file2.txt
- -w, --ignore-all-space: 在比较时忽略所有空白字符的差异。
- 示例:
diff -w file1.txt file2.txt
- -B, --ignore-blank-lines: 在比较时忽略空白行的差异。
- 示例:
diff -B file1.txt file2.txt
- -q, --brief: 仅报告文件是否不同,而不显示具体差异。
- 示例:
diff -q file1.txt file2.txt
- -s, --report-identical-files: 报告相同的文件。
- 示例:
diff -s file1.txt file2.txt
输出:
1c1
< Hello, World!
---
> Hello, Linux!
- -r, --recursive: :递归比较目录中的所有文件。
- 示例:
diff -r dir1 dir2
- -N, --new-file: 将不存在的文件视为空文件进行比较。
- 示例:
diff -N file1.txt file2.txt
- –color: 在输出中使用颜色高亮显示差异。
- 示例:
diff --color file1.txt file2.txt
更多命令请参考 Linux命令大全 专栏。