Tente também
awk -F, -v OFS="," '
NR == 1 {HD = "Keyobject,are you sleeping,country of meeting"
for (MX=n=split (HD, HDArr, OFS); n>0; n--) SRCH[HDArr[n]]
print HD
next
}
$2 in SRCH {RES[$2] = $3
RES[HDArr[1]] = $1
}
NR%2 {for (i=1; i<=MX; i++) printf "%s%s", RES[HDArr[i]], (i == MX)?ORS:OFS
split ("", RES)
}
' file
Keyobject,are you sleeping,country of meeting
1,yes,USA
2,' ',' '
3,yes,CHINA
4,yes,ITALY
Ao ler a linha 1, o cabeçalho e uma matriz de pesquisa indexada pelos elementos de cabeçalho são criados e o cabeçalho é impresso. Nas linhas seguintes, a matriz de resultados indexada por $ 2 recebe $ 3 e é redundante para a cadeia de índice "Keyobject". Para cada segunda linha, o resultado é impresso e a matriz de resultados é excluída.