-6

だからここに私の問題があります:私は2つのファイルを持っています:

ファイル a:

Username    ID  ChanelName
somename    1   Ime1
somename    6   Ime2
somename    16  Ime3
somename    12  Ime4
somename    19  Ime5

ファイル b:

ID  subID   SubAccountName
1   12001   SubName1
1   12003   SubName2
2   17507   SubName3
3   11997   SubName4
4   345 SubName5
5   6457    SubName6
6   8567    SubName7
6   6456    SubName8
6   3453    SubName9
6   7453    SubName10
10  745 SubName11
11  63453   SubName12
12  5674    SubName13
13  74756   SubName14
14  2324    SubName15
15  6576    SubName16
16  7897    SubName17
16  980 SubName18
18  6786    SubName19
19  79089   SubName20
20  75674   SubName21

このファイルを比較して、この結果を出力したい:

1   12001   SubName1
1   12003   SubName2
6   8567    SubName7
6   6456    SubName8
6   3453    SubName9
6   7453    SubName10
16  7897    SubName17
12  5674    SubName13
19  79089   SubName20
20  75674   SubName21
4

2 に答える 2

0

awkワンライナー

awk '{if(NR>1)system("grep -w ^"$2" <file2>");}' <file1>

また、他にも多くの解決策があります。最初のファイルの内容を配列に格納するだけで、 を使用せずにチェックjoinまたはawkそれ自体をgrep行うことができます。

于 2013-05-17T19:18:15.300 に答える
0
tail -n+2 file1 | awk '{print $2}' | xargs -I{} grep '^{} ' file2
于 2013-05-17T18:51:22.610 に答える