首页 > 系统服务 > 详细

shell 多文件内容关联匹配

时间:2015-10-26 19:07:59      阅读:359      评论:0      收藏:0      [点我收藏+]
从A文件取出前两列 和另一个文件匹配 打印出匹配到的行

from=$1
compare=$2
tofile=$3

f1s=( $(cat $from  |awk -F ‘\t‘ ‘{print $1}‘) )
f2s=( $(cat $from  |awk -F ‘\t‘ ‘{print $2}‘) )

#for i in `seq 0 ${#f1s[@]}`;   do echo ${f1s[$i]} ; done;

for i in `seq 0 ${#f1s[@]}`
do 
if [[ ‘‘ == `echo ${f1s[$i]} | sed ‘s/^ //;s/ $//‘`  ]] 
	then 
		continue
elif [ 0 -lt `grep    ${f1s[$i]} $compare | grep  ${f2s[$i]} |wc -l` ]
	then
		echo ${f1s[$i]} ${f2s[$i]} >> $tofile
fi   
done
exit 0






shell 多文件内容关联匹配

原文:http://my.oschina.net/ois/blog/522258

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