Teniendo una salida como la siguiente:
1 icmp 10.253.21.9 10.190.5.89 2048
111 tcp 10.253.21.9 10.190.5.89 7081
49 tcp 10.253.21.9 10.190.5.89 7181
Lo que se quiere es que la columna 4 y 5 sean unidos, y agregando “:” entre los dos valores y a la columna 5 que tenga un valor vacío “”.
echo file.txt | awk '{$4=$4":"$5;$5=""} 1'
Salida:
icmp 10.253.21.9 10.190.5.89:2048
11 tcp 10.253.21.9 10.190.5.89:7081
9 tcp 10.253.21.9 10.190.5.89:7181
O también solo imprimir las columnas vacías sin modificar la columna 5:
echo file.txt | awk '{$4=$4":"$5; print $1,$2,$3,$4}'