diff命令中常见的选项

Shell Liemer_Lius 1521℃

diff命令通常用来比对两个文件的差异,如果有异常,返回不一致的内容,echo $?的返回值也是非零的。

有时候,因为文档的顺序原因,或者行数不同的原因,导致diff的结果中有一些其实是一致的内容,这就需要进行一定的操作,并在diff中添加必要的选项:

1. 排序

给文档进行排序,这样能避免因为顺序不一致导致的异常;

2. 去掉空行

sed -i ‘^$d’ lius.txt

3. 添加必要的选项

diff -y –suppress-common-lines

-y:竖向显示,更加友好

–suppress-common-lines:忽略相同的行

 

例子:

> cat a.txt
aaa
ccc
ddd
> cat b.txt
aaa
bbb
ddd
> diff a.txt b.txt  # 横向显示,结果不明显
2c2
< ccc
---
> bbb
> diff -y a.txt b.txt   # -y竖向向对比显示,重复项也列出
aaa								aaa
ccc							       |bbb
ddd								ddd
> diff -y --suppress-common-lines a.txt b.txt  # --suppress-common-lines过滤重复项
ccc							       |bbb

 

转载请注明:liutianfeng.com » diff命令中常见的选项

喜欢 (1)

评论已关闭。