Nur sed und sonst nichts
sed 's/ \+/,/g' ifile.txt > ofile.csv
cat ofile.csv
1,4,22.0,3.3,2.3
2,2,34.1,5.4,2.3
3,2,33.0,34.0,2.3
4,12,3.0,43.0,4.4
awk
ist hier vielleicht etwas übertrieben. IMHO, mit tr
für direkte Substitutionen wie diese ist viel einfacher:
$ cat ifile.txt | tr -s '[:blank:]' ',' > ofile.txt