使用Shell脚本比较两个文件
我必须比较两个类似的文件使用Shell脚本比较两个文件,shell,Shell,我必须比较两个类似的文件 A B --- --- 110-01 110-01 120-02 110-02 ... 120-02 .... 并且必须打印B文件中存在的额外元素。您需要区分: 您需要区分: diff是一个明显的选择,但
A B
--- ---
110-01 110-01
120-02 110-02
... 120-02
....
并且必须打印B文件中存在的额外元素。您需要区分:
您需要区分:
diff是一个明显的选择,但它当然会在行级别进行比较,并且文件中的标记以空格分隔。可以使用sed将空格更改为线。接下来对两个文件进行排序,最后进行差异排序。diff是一个明显的选择,但这当然会在行级别进行比较,并且显示为文件中的标记以空格分隔。可以使用sed将空格更改为线。接下来对两个文件进行排序,最后进行差异。您需要设置差异 对于已排序的文件:
join -t'\0' -v2 file1 file2
sort file1 file1 file2 | uniq -u
对于未排序的文件:
join -t'\0' -v2 file1 file2
sort file1 file1 file2 | uniq -u
有关更多设置操作,请参见您需要设置差异 对于已排序的文件:
join -t'\0' -v2 file1 file2
sort file1 file1 file2 | uniq -u
对于未排序的文件:
join -t'\0' -v2 file1 file2
sort file1 file1 file2 | uniq -u
有关更多设置操作,请参见,但如果您的文件仅包含一行以空格或逗号分隔的值,则设置操作非常无用;如果您的文件仅包含一行以空格或逗号分隔的值,则设置操作非常无用