考虑如下两个文件:
$ cat f1.txt
col_name data_type comment
name string
age int
income int
access_count1 int
$ cat f2.txt
col_name data_type comment
name string
city string
income int
edr time
access_count1 int
bcwer int
我需要比较两个文件(不是逐行),因为任何行都可以有新值,并显示:
- f2.txt 中的新值
- f1.txt 中的任何更新值
我努力了:
$ diff -y --suppress-common-lines f1.txt f2.txt
age int | city string
> edr time
| bcwer int
它不是可读的格式。
答案1
如果您-y
在声明中删除该选项diff
,您应该得到:
3c3
< age int
---
> city string
4a5
> edr time
5a7
> bcwer int
如果你不想要所有无关的信息,你可以grep
得到一个漂亮、干净的结果,如下所示:
$ diff --suppress-common-lines f1.txt f2.txt | grep -e "^[<>]"
< age int
> city string
> edr time
> bcwer int