小编adr*_*ter的帖子

AWK:比较两个文件中的两个不同列

我有这两个文件

文件1:

9 8 6 8 5 2
2 1 7 0 6 1
3 2 3 4 4 6
Run Code Online (Sandbox Code Playgroud)

File2 :(有超过400万行)

MN 1 0
JK 2 0
AL 3 90
CA 4 83
MK 5 54
HI 6 490
Run Code Online (Sandbox Code Playgroud)

我想比较file1的字段6,并比较文件2的字段2.如果它们匹配,则将file2的字段3放在file1的末尾我已经查看了其他解决方案,但我无法让它正常工作.

期望的输出:

9 8 6 8 5 2 0
2 1 7 0 6 1 0
3 2 3 4 4 6 490
Run Code Online (Sandbox Code Playgroud)

我的尝试:

awk 'NR==FNR{a[$2]=$2;next}a[$6]{print $0,a[$6]}' file2 file1
Run Code Online (Sandbox Code Playgroud)

程序刚刚挂起.

awk

4
推荐指数
1
解决办法
2013
查看次数

AWK打印找到匹配项的列号

我为这个答案看了很多地方,但找不到.仍然在这里学习AWK,并且只是想知道如何打印找到匹配项的列号.

我希望脚本给我字段/列号,其中找到regexp匹配"/ 1"

INPUT

name1 0/0 0/0 0/1 0/0
name2 0/1 0/0 0/0 0/0
name3 1/1 0/0 0/0 0/0
name4 0/0 0/0 0/0 1/1
Run Code Online (Sandbox Code Playgroud)

期望的输出

4
2
2
5
Run Code Online (Sandbox Code Playgroud)

regex bash shell scripting awk

0
推荐指数
1
解决办法
4082
查看次数

标签 统计

awk ×2

bash ×1

regex ×1

scripting ×1

shell ×1