1.txt

1.txt

これは私の2つのファイルです

1.txt

1
2
3
4
5

2.txt

2       a
5       3

私が受け取ったファイルよりawk -F '\t' 'NR==FNR{F1[$0];next}$1 in F1{print}' 1.txt 2.txt

2       a
5       3

しかし、私はこのようなファイルを取得したい

1
2    a
3
4
5    3

または

1     0
2     a
3     0
4     0
5     3

ベストアンサー1

スペースを2.txtもう一度タブに変換しますsed -i 's/ */\t/' 2.txt

awk -F '\t' '
  BEGIN{OFS=FS} NR==FNR{F1[$1]=$2; next} {print $1, ($1 in F1)? F1[$1] : 0}
' 2.txt 1.txt
1       0
2       a
3       0
4       0
5       3

おすすめ記事