Una forma sería:
$ perl -lne 's/^/\n/ if $.>1 && /^\d+/; printf "%s",$_' file
20141101 server contain dump
20141101 server contain nothing {uekdmsam ikdas jwdjamc ksadkek} ssfjddkc * kdlsdlsddsfd jfkdfk
20141101 server contain dump
Sin embargo, eso también elimina la nueva línea final. Para agregarlo nuevamente, use:
$ { perl -lne 's/^/\n/ if $.>1 && /^\d+/; printf "%s",$_' file; echo; } > new
Explicación
El -leliminará las nuevas líneas finales (y también agregará una a cada printllamada, por eso lo uso printfen su lugar. Luego, si la línea actual comienza con números ( /^\d+/) y el número de línea actual es mayor que uno ( $.>1, esto es necesario para evitar agregar un extra línea vacía al principio), agregue una \nal principio de la línea. printfImprime cada línea.
Alternativamente, puede cambiar todos los \ncaracteres a \0, luego cambiar aquellos \0que están justo antes de una cadena de números a \nnuevamente:
$ tr '\n' '\0' < file | perl -pe 's/\0\d+ |$/\n$&/g' | tr -d '\0'
20141101 server contain dump
20141101 server contain nothing {uekdmsam ikdas jwdjamc ksadkek} ssfjddkc * kdlsdlsddsfd jfkdfk
20141101 server contain dump
Para que coincida solo con cadenas de 8 números, use esto en su lugar:
$ tr '\n' '\0' < file | perl -pe 's/\0\d{8} |$/\n$&/g' | tr -d '\0'