如何使用 awk 提取正斜杠后的字符

如何使用 awk 提取正斜杠后的字符

如何提取 a 之后的子字符串/并将提取的值与另一个文件进行比较?

cat file 

/abc|98357|
abc/aabb|023947|
xyz/0102|293847|
pqr/pqrst|29384|
9864/truse|253123|

预期输出:-

abc|98357|
aabb|023947|
0102|293847|
pqrst|29384|
truse|253123|

然后将文件 1 的第 1 列与另一个文件进行比较:-

aabb
pqrst
truse

答案1

awk -F'/' '{print $2}' file

产生您的“预期输出”。


然后将文件 1 的第 1 列与另一个文件进行比较。

如果您的意思是“仅打印 file2 中与‘预期输出’第一列匹配的匹配行”,那么答案可能是

comm -12 <(awk -F'[/|]' '{print $2}' file | sort) <(sort file2)

相关内容