shell - 差异/合并两个文件

标签 shell awk

我有两个 IP 地址列表。我需要将它们合并到三个文件中,交集,仅来自 list1 的文件和仅来自 list2 的文件。

我可以用 awk/diff 或任何其他简单的 unix 命令来做到这一点吗?如何?

文件如下所示:

111.222.333.444
111.222.333.445
111.222.333.448

谢谢!

最佳答案

如果文件已排序,则

join list1 list2

将输出交点。
join -v 1 list1 list2

将只输出在 list1 中的那些。
join -v 2 list1 list2

将仅输出在 list2 中的那些。

关于shell - 差异/合并两个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3364748/

相关文章:

arrays - 如何从awk中的split函数访问数组的最后一个索引?

linux - shell 中的数字文件名匹配

awk - AWK 能理解用 E 符号写的数字吗?

string - awk中不区分大小写的字符串匹配

linux - 从 shell 脚本运行 awk 文件而不指定 awk 的确切位置

linux - 为有异常(exception)情况的行中的单词添加前缀

regex - 如何删除文件开头的以 "//"开头的行(例如文件头)?

bash - 如何在 Shell 命令中交换参数

VBA wscript.shell .close 给出错误

bash - 如何将用户名、全名和登录时间从手指回显到列中?我在 openSUSE 13.1 上使用 bash