如何将两个文件之间的差异grep到一个文件中

如何将两个文件之间的差异grep到一个文件中

说我有两个文件:a.txt 和 b.txt。

a.txt的内容:

mosfet23
cap098
inductors 98
metal96

b.txt的内容:

test 23 cap098
drc45 metal96
lvs cap098

当然我可以使用 vimdiff 来检查它们的差异

我的问题是如何将a.txt中存在但b.txt中不存在的设备记录到文件中?

我们也不能使用 comm,因为 b.txt 未排序?

如何使用tcl、grep或sed实现?

答案1

使用 Bash 回答:

comm -2 -3 \
  <(xargs -n 1 < a.txt | sort) \
  <(xargs -n 1 < b.txt | sort) > foo.txt

xargs -n 1输出字符串由换行符分割。您可以使用commBash 的命令和“进程替换”。是as like 文件<(...)的结果。...最后,您可以使用重定向符号将结果写入诸如foo.txt.

相关内容