1

次のような 2 つのファイルがあります。

ファイル A:

1,x
2,z
3,y

ファイル B:

7,b
3,c
9,t
1,m

File A (最初の列)をループして、を使用してFile B (最初の列)に一致するものがあるかどうかを確認したいと思いますawk

予想されるものは次のとおりです。

1,m
3,c
4

2 に答える 2

3

ちょうど使用awk

$ awk -F, 'NR==FNR{a[$1];next}($1 in a)' file1 file2
3,c
1,m

sort順序付けられた出力のためにパイプします:

$ awk -F, 'NR==FNR{a[$1];next}($1 in a)' file1 file2 | sort
1,m
3,c

あるいは、これは何をするかjoinです(入力ファイルをソートする必要があります)

$ join <(sort file1) <(sort file2) -j1 -t, -o"2.1,2.2"
1,m
3,c
于 2013-03-04T08:41:09.180 に答える
2
join -t, -o 1.1,1.2 <(sort fileA) <(sort fileB)
于 2013-03-04T09:04:56.693 に答える