以下の 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 コマンドを試しました:
join -a 1 -a 2 -e '0' -o 0,1.2,1.3,2.2 FileA.txt FileB.txt
ただし、これにより、新しい 3 番目の列のすべてのエントリに 0 が出力されます。次のようになります。
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