参考资料
- 【 diff 】コマンド(基本編)――テキストファイルの差分を出力する
 - 便利なdiffコマンド使い方
 
目录
- 前期准备
 - 一. 基本语法
 - 二. 文件比较
 - 2.1 无配置项
 - 2.2 -B 忽略空行,-w忽略空格
 - 2.3 -y 文件内容横向比较显示
 - 2.4 -q 仅显示文件是否不同,不显示具体差异
 
- 三. 文件夹比较
 - 3.1 -r 递归比较到子文件夹
 - 3.2 -N 比较文件夹时,显示文件差分内容
 
前期准备
有文件file1.txt 和 file2.txt,其差分如下。

一. 基本语法
# 比较文件
diff 配置项 file1 file2
# 比较文件夹
diff 配置项 directory1 directory2
 
| 短配置项 | 长配置项 | 作用 | 
|---|---|---|
| -i | –ignore-case | 忽略大小写 | 
| -B | –ignore-blank-lines | 忽略空行 | 
| -b | –ignore-space-change | 如果只有空格发生变更的话,就忽视 | 
| -E | –ignore-tab-expansion | 忽略tab造成的空格变化 | 
| -w | –ignore-all-space | 忽略空格 | 
| -y | –side-by-side | 文件显示为两列横向比较 | 
| -a | –text | 将文件强制视为文本文件一行行比较 | 
| -q | –brief | 仅显示文件是否不同,而不显示具体差异 | 
| -r | –recursive | 文件夹进行比较的时候,递归比较其子文件夹 | 
| -N | –new-file | 目录比较时,如果某个文件仅存在于一个目录中 用一个空文件和该文件比较,显示该文件的具体内容  | 
二. 文件比较
2.1 无配置项
diff file1.txt file2.txt
 
<:指向左边,表示左侧文件的内容>:指向右边,表示右侧文件的内容

2.2 -B 忽略空行,-w忽略空格
diff -Bw file1.txt file2.txt
 
🧐 可以看到空格和空行的差异并没有差分出来

2.3 -y 文件内容横向比较显示
diff -y file1.txt file2.txt
 

2.4 -q 仅显示文件是否不同,不显示具体差异
diff -q file1.txt file2.txt
 

三. 文件夹比较
3.1 -r 递归比较到子文件夹
 diff -r ./20240102/ ./temp
 

3.2 -N 比较文件夹时,显示文件差分内容
直接比较文件夹的话,不会显示文件内容的比较,使用-N的话,可以显示
diff -N ./temp/ ./work/
 

















![基础IO[一]](https://img-blog.csdnimg.cn/direct/0192bf8e152b45dda673209a440bbbbd.png)


