Ok, como esta es una pregunta compleja, la explicaré claramente. Obtuve un contenido de archivo que se muestra a continuación:
$ Cat File1
ABC Cool Lol POP {MNB}
ABC Cool Lol POP {MNB}
ABC Cool Lol POP {MNB}
ABC Cool Lol POP {TBMKF}
ABC Cool Lol POP {YUKER}
ABC Cool Lol POP {EFEFVD}
La salida que quiero
-Cool MNB + POP ;
-Cool MNB + POP ;
-Cool MNB + POP ;
-Cool TBMKF + POP ;
-Cool YUKER + POP ;
-Cool EFEFVD +POP ;
En primer lugar, trato de sacar la última columna del File1
e imprimirla por
sed 's/[{}//g' File1 > File3
Después de eso copio todo el contenido de File1
un nuevoFile4
cp File1 File4
Después de eso, reemplazo los datos dentro del File4
con los File3
datos (significa los datos sin paréntesis una " File1
última columna esa")
awk 'FNR==NR{a[NR]=$1;next}{$5=a[FNR]}1' File3 File4 >>File5
La salida debería ser así
ABC Cool Lol POP MNB
ABC Cool Lol POP MNB
ABC Cool Lol POP MNB
ABC Cool Lol POP TBMKF
ABC Cool Lol POP YUKER
ABC Cool Lol POP EFEFVD
Finalmente lo intento
awk -F“ " '{print - $2,$5 +,$4 ";"}‘ File5
Pero el resultado no salió como se muestra como quiero, solo se muestran todos los datos similares de MNB, otros no se presentaron (Presente los datos de la última columna),
awk --version
, ¿cuál es el resultado?