Awk grep file1到file2而不更改顺序

Awk grep file1到file2而不更改顺序,awk,grep,Awk,Grep,需要的输出文件是: cat file1 2 5 1 6 cat file2 5 A 2 B 6 C 1 D 我试过这个: 2 B 5 A 1 D 6 C 然而,输出结果如下所示: grep -Ff file1 file2 > output 救命啊 1 D 2 B 5 A 6 C 没有awk有点棘手 $ awk 'NR==FNR{a[$1]=$0; next} $1 in a{print a[$1]}' file2

需要的输出文件是:

cat file1
2   
5  
1  
6 

cat file2 
5 A  
2 B  
6 C  
1 D  
我试过这个:

2 B  
5 A  
1 D  
6 C  
然而,输出结果如下所示:

grep -Ff file1 file2 > output
救命啊

1 D  
2 B  
5 A  
6 C  
没有awk有点棘手

$ awk 'NR==FNR{a[$1]=$0; next} $1 in a{print a[$1]}' file2 file1

2 B
5 A
1 D
6 C
救命啊

1 D  
2 B  
5 A  
6 C  
没有awk有点棘手

$ awk 'NR==FNR{a[$1]=$0; next} $1 in a{print a[$1]}' file2 file1

2 B
5 A
1 D
6 C

我尝试了awk,但在我的电脑中似乎不起作用。还有其他想法或grep代码吗?grep不行,请检查加入版本。什么似乎不起作用?失败?输出错误?找不到awk?您是否用您发布的示例数据进行了验证?我不明白,您不希望密钥完全匹配?如果有多个匹配,会发生什么?您发布的示例数据应该能够代表您的真实案例,否则很难做到?猜猜你需要什么。是的,我需要它来打印多个匹配项。任何比赛都以1或2等开始。我解决了。非常感谢。我们只需要使用带分隔符F的awk来忽略后面的内容。我尝试了awk,但在我的电脑中似乎不起作用。还有其他想法或grep代码吗?grep不行,请检查加入版本。什么似乎不起作用?失败?输出错误?找不到awk?您是否用您发布的示例数据进行了验证?我不明白,您不希望密钥完全匹配?如果有多个匹配,会发生什么?您发布的示例数据应该能够代表您的真实案例,否则很难做到?猜猜你需要什么。是的,我需要它来打印多个匹配项。任何比赛都以1或2等开始。我解决了。非常感谢。我们只需要使用带分隔符F的awk来忽略后面的内容。。