码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2018-10-11 01:49:59      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:文件中   roo   提示   lan   ida   -bash   pre   $2   思路   

把这个两个文件都存在的用户的密码输出出来
[root@sentinel 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--在两个文件中取交集,显示指定的内容

标签:文件中   roo   提示   lan   ida   -bash   pre   $2   思路   

原文地址:http://blog.51cto.com/13447608/2298481

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!