• ベストアンサー

二つのファイルから条件に一致する行を抽出

AとBの二つのファイルがあります。 Aの2列目3列目の間に存在するBの2列目のファイルを抽出してCのファイルを作成したいです。 awkのifでチマチマ作ればできるとは思うのですが、他に簡単にできる方法はないでしょうか? awkだけでなくperlやpythonなどでも問題ないです。 <A> A 10 20 B 30 40 C 50 70 D 90 110 <B> あ 15 い 25 う 55 え 75 お 95 <C> あ 15 う 55 お 95

質問者が選んだベストアンサー

  • ベストアンサー
  • Wap58
  • ベストアンサー率33% (29/87)
回答No.1

use strict; open K,'a.txt'; my @an = <K>; close K; open G,'b.txt';#<= my @bn = <G>; close G; for(@an){ my $an = [split(' ')]; for(@bn){ my $bn = [split(' ')]; print "$_" if $an->[1] < $bn->[1] and $bn->[1] < $an->[2] ; } }

hiroponsettu
質問者

お礼

ありがとうございました。

関連するQ&A

専門家に質問してみよう