Na verdade, com sua entrada / saída, você está removendo várias novas linhas. Isso torna o problema um pouco mais difícil, porque coisas como sed
- como padrão iteram uma linha por vez.
Sugiro usar algo como perl:
#!/usr/bin/env perl
use strict;
use warnings;
#read everything
local $/;
#do replacement of a digit, following by one - or more - linefeeds.
#m is multi-line, r is 'return the result' (to print)
#g is do it repeatedly.
print <DATA> =~ s/(\d)\n+/$1 /mrg;
__DATA__
some question: 1404241
what's your name?
1498646
my name is Bond.
Isto imprime:
some question: 1404241 what's your name?
1498646 my name is Bond.
Isso pode ser transformado em um único liner:
perl -0777 -e 'print <> =~ s/(\d)\n+/$1 /mgr'