awk '{f1 = $0; getline<"file2"; print f1, $2}' < file1 > file3
O arquivo de saída terá o mesmo número de linhas que file1 , então a última coluna estará vazia para as últimas linhas se file2 for menor, e os últimos valores em file2 serão ignorados se for mais longo .
Alternativamente, como sugerido por Costas:
awk '{getline f1 <"file1" ; print f1,$2}' < file2 > file3
Dessa vez, file3 terá o mesmo número de linhas que file2 . Isso significa que a ordenação de colunas será afetada se file2 for maior que file1 .
Com:
awk '{print $2}' < file2 | paste file1 - > file3
file3 terá o mesmo número de linhas que o maior de file1 e file2 . Nenhum dado será descartado, mas como acima, se file2 for maior que file1 , as últimas linhas em file3 terão dados de file2 na primeira / segunda coluna.