0

2 つのファイルがあり、次のように結合操作を実行しています。

  nmmadaan@nmmadaan] cat one.txt                                                                                                                                                                     ~
    a b
    e f
    c k
    nmmadaan@nmmadaan] cat two.txt                                                                                                                                                                     ~
    a h
    c j
    e p
    nmmadaan@nmmadaan] join one.txt two.txt                                                                                                                                                            ~
    a b h
    e f p
    nmmadaan@nmmadaan] join two.txt one.txt                                                                                                                                                            ~
    a h b
    e p f

結合 two.txt one.txt が最初の列の行を 'c' として与えない理由。最初の列に「e」がある行を考慮して、両方が結合するのはなぜですか?

4

2 に答える 2

5

マニュアルページを読んでください - http://linux.die.net/man/1/joinファイルは結合フィールドでソートする必要があります

つまり、one.txt は結合フィールドでソートされません。

于 2013-09-21T05:40:53.937 に答える
3

言ってみてください:

$ join <(sort one.txt) <(sort two.txt)
a b h
c k j
e f p
于 2013-09-21T05:44:16.490 に答える