次の2つのファイルを結合しようとしています。
ファイルA.txt:
ABCA1 0 2
ABCA4 3 12
ABCB11 0 4
ABCB4 0 3
ABCC6 0 3
ABCC8 4 33
ファイルB.txt
ABCA4 2
ABCB11 1
2番目のファイルに一致するものがない場合は、0を印刷したいと思います。私はこの結合コマンドを試しました。
join -a 1 -a 2 -e '0' -o 0,1.2,1.3,2.2 FileA.txt FileB.txt
ただし、新しい 3 番目の列のすべての項目に対してゼロが印刷されます。それだけです:
ABCA1 0 2 0
ABCA4 3 12 0
ABCB11 0 4 0
ABCB4 0 3 0
ABCC6 0 3 0
私はこのコマンドのバージョンを使用してFileA.txtを生成します。 3番目の列を追加するのがなぜ機能しないのかわかりません。助けが必要ですか?
答え1
join
ロケール環境変数を設定すると、動作が変わります。または をjoin
実行してexport LC_ALL=en_US.UTF-8
試してみてくださいexport LC_ALL=C
。