每日一题--4--在两个文件中取交集,显示指定的内容

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每日一题--4--在两个文件中取交集,显示指定的内容相关的知识,希望对你有一定的参考价值。

把这个两个文件都存在的用户的密码输出出来
[[email protected] student]# head file1 file2 
==> file1 <==
oldboy   1234
alex    4567
lidao   9999

==> file2 <==
001 lidao
002 alex
003 oldboy
004 oldgirl
提示:需要用到如何判断这两个文件不是一个文件。

解题思路

awk ‘FNR==NR{h[$1]=$2}FNR!=NR{print h[$2]}‘ file1 file2 
awk ‘FNR==NR{h[$1]=$2;next}{print h[$2]}‘ file1 file2 
//next 满足前面这个条件就不执行后面的内容了

#!/bin/bash
for i in `awk ‘{print $1}‘ file1`
do
    for j in `awk ‘{print $2}‘ file2`
        do
        if [ $i == $j ];then
            awk ‘$1~/‘$i‘/{print $2}‘ file1
        fi
        done
done

以上是关于每日一题--4--在两个文件中取交集,显示指定的内容的主要内容,如果未能解决你的问题,请参考以下文章

《LeetCode之每日一题》:51.两个数组的交集 II

《LeetCode之每日一题》:275.两个数组的交集 II

《LeetCode之每日一题》:47.两个数组的交集

每日一题757. 设置交集大小至少为2

每日一题558. 四叉树交集

餐厅(秋季每日一题 37)