Объединять файлы на основе первого столбца и добавлять нули, где имя столбца не совпадает

У меня есть два файла:
файл 1

1   a  
 2   b  
  3   c

file2:

1   d                                                                                     
2   e  
4   f  
5   h

Ожидаемый результат

файл 3

1 a d   
2 b e   
3 c 0    
4 0 f    
5 0 h    

Я попробовал join команда, но, кажется, слепо объединить столбцы без поиска подходящих шаблонов в первом столбце в двух файлах

1 ответ

Было бы действительно полезно, если бы вопрос показал фактическую используемую командную строку, не говоря уже о неправильном выводе.

Но я подозреваю, что это то, что вы хотите:

$ join   -o auto   -e '0'   -a 1   -a 2   -1 1   -2 1   f1   f2
1 a d
2 b e
3 c 0
4 0 f
5 0 h
Другие вопросы по тегам