need to space fill a 2060 byte record

Calling all experts:

When I ftp from Mainframe to unix server, the ftp message says fixed length 2060, but i lose trailing spaces.
I tried a solution i found here,
awk ' { printf("%-2060s\n",$0) } ' fname1 > fname2
works for small records but, err msg: string too long, for long records

Any ideas?
Much appreciated.

Whenever you deal with mainframe files consider dd

I think you want something like - this assumes the input file has carriage returns (newlines):

dd ifile=fname cbs=2060 conv=block > fname2 

Play around until you get what you want.