com awk
:
awk -F: '{if($1!=a){printf "\n%s", $0}else{$1=":";print}} {a=$1}' file
Onde:
-
-F:
usa:
como delimitador. -
if($1!=a){...}
Se a variável contém o mesmo que o primeiro campo, imprima tudo sem uma nova linha no final, -
else{...}
: else imprime todos os campos, exceto o primeiro. -
{a=$1}
Define a variável usada na cláusula if.
Saída:
/export/home/got/logs/o2877612.01:job_1432787863184_159408 Message: org.apache.pig.backend.executionengine.ExecException: ERROR 2118: Input path does not exist: /user/got/distro: Module SUMMARY_PIG
Eu acho que você quer linha na ordem como aparecem no arquivo de log, não invertido como na saída desejada.