首页 > 其他 > 详细

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

时间:2018-10-11 01:25:45      阅读:265      评论:0      收藏:0      [点我收藏+]
把这个两个文件都存在的用户的密码输出出来
[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--在两个文件中取交集,显示指定的内容

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!