Com apenas o awkcomando:
awk -F, '{getline f1 <"file2" ;print f1,$3,$4}' OFS=, file1
Obtenha uma linha do arquivo1 e armazene-a na variável local f1, depois imprima a linha armazenada f1e, finalmente, imprima o terceiro ( $3) e o dianteiro ( $3) campos do arquivo1 que delimitou por vírgula por ,completo e altere o OFS (separador do campo de saída [espaço por padrão]) para vírgula ( ,).
O comando curto seria assim:
paste -d, file2 <(cut -d, -f3- file1)
A, B, C, D
A, B, C, D
A, B, C, D
A, B, C, D
cole o arquivo2, recorte e cole a terceira coluna na próxima ( -f3-) do arquivo1.
Com awke paste(opção A)
O comando abaixo também copia as duas últimas colunas ( C,D) do arquivo1 no final de cada linha do arquivo2:
paste -d',' file2 <(awk -F',' '{print $(NF-1)","$NF}' file1)
Acima do comando, cole o conteúdo do arquivo2, imprima um delimitador de vírgula ( -d',') e, em seguida, cole os dois últimos campos ( NFé o índice do último campo e $NFa cadeia de caracteres que é o seu índice NF. Assim $(NF-1)é o segundo campo antes do último campo) do arquivo1 quando esse índice redefine ou divide com vírgula espectador ( -F',').
Com awke paste(opção B)
Este comando também é o mesmo que acima ( $3e $4aponta para o terceiro e o quarto campos de cada linha do arquivo1):
paste -d',' file2 <(awk -F',' '{print $3","$4}' file1)
Ou outra solução com o cutcomando:
paste -d, <(cut -d, -f1 file1) <(cut -d, -f2 file2) <(cut -d, -f3- file1)
comando cut no comando acima, primeiro corte o primeiro campo ( -f1indexado com delimitador de vírgula ( -d.)) de file1 ( cut -d, -f1 file1), depois corte e cole o segundo campo de file2 ( cut -d, -f2 file2) e, finalmente, corte e cole a terceira coluna ( -f3) nos nexts ( -) do arquivo1 ( cut -d, -f3- file1) novamente.
Este comando também retorna o mesmo resultado:
paste -d, <(awk -F',' '{print $1}' file1) <(awk -F',' '{print $2}' file2) <(awk -F',' '{print $3","$4}' file1)
cole o segundo campo de file1 ( awk -F',' '{print $1}' file1), imprima uma vírgula ( -d,), cole a segunda coluna de file2 ( awk -F',' '{print $2}' file2) e, finalmente, cole a segunda e a última coluna de file1 ( awk -F',' '{print $3","$4}' file1) novamente.