Aqui está outro sed
plus tr
plus printf
:
tr -s '[:space:]' \n <infile |
sed "/^[0-9]/,${$(
printf '\nw file%b\nn' \
1 2 3 4 5 6 7 8 '9\n}\c'
)"
Eu o executei na minha área de transferência, conforme a saída de xsel
em /tmp
após copiar o seu exemplo para o buffer e depois fiz ...
head -n3 /tmp/file?
... que imprimiu ...
==> /tmp/file1 <==
1
2
3
==> /tmp/file2 <==
1.361e-11
1.339e-11
1.334e-11
==> /tmp/file3 <==
1.177e-11
1.178e-11
1.177e-11
==> /tmp/file4 <==
8.807e-12
8.805e-12
8.811e-12
==> /tmp/file5 <==
9.063e-12
8.867e-12
8.824e-12
==> /tmp/file6 <==
2.002e-08
2.002e-08
2.002e-08
==> /tmp/file7 <==
2.002e-08
2.002e-08
2.002e-08
==> /tmp/file8 <==
2.500e+01
2.500e+01
2.500e+01
==> /tmp/file9 <==
1
1
1