I need to add blank spaces to a file

やりたいことが良く分からないが、スペースを付与したいそうな。

$ awk 'BEGIN{ printf "%11sE" , "" }'

とか

$ echo E | sed ':a;s/^.\{0,11\}$/ &/;ta'

というものが相当するんだが、どうもファイルを置き換えたいらしい。(最初からそう書けよ)
紛争から抜け出した Ed 氏が回答し、

awk 'BEGIN{ printf "%33sE" , "" }' testfile > tmp && mv tmp testfile

多分、私もこうすると思う。で、Ed 氏が、

awk '
function printout(_str) { _out[++_nr] = _str }
function flushout(  _i) { close(FILENAME);
                           for (_i=1; _i<=_nr;_i++)
                                  print _out[_i] > FILENAME
                         }                                                                   
{ printout( NR " " $0 ) }
END { flushout() }'

というのを書いているが、どうなんでしょう。普通、やらないよなぁ。
結局、「awk の printf の挙動を理解するように」となっている。