【问题标题】:Filter column matches from two files过滤来自两个文件的列匹配
【发布时间】:2021-10-01 20:24:31
【问题描述】:

我有两个文件格式:

number|string

我想用文件 1 的内容创建第三个文件,但第二列的两个文件之间没有匹配项。

文件1

1|abc
2|bcd
3|cde

文件2

1|bcd
2|def

文件3

1|abc
3|cde

这是正确的吗?

awk -F '|' 'NR==FNR{a[$2];next}$2 not in a{print $0}' file1 file2 > file3

【问题讨论】:

  • 感谢您分享您的代码/努力。请在您的问题中添加输入和预期输出,让它更清楚。
  • 请在您的问题中提及比较这两个文件的逻辑,谢谢。

标签: awk


【解决方案1】:

你可以使用这个awk:

awk -F '|' 'FNR == NR {skip[$2]; next} !($2 in skip)' file2 file1 > file3

cat file3

1|abc
3|cde

【讨论】:

    猜你喜欢
    • 2016-12-21
    • 1970-01-01
    • 1970-01-01
    • 2020-07-20
    • 2021-11-21
    • 2015-09-19
    • 1970-01-01
    • 1970-01-01
    • 2019-01-17
    相关资源
    最近更新 更多