Is there a specific reason you want to edit/truncate it in place? Seems like it maybe a lot of work and risky at that. It may be easier to simply rotate the log throughout the day, compressing the older ones to save space. Have you checked out rotating files, is there a better way?
? Are these files flat text, or something else? A search on google may be a good idea. I seem to run across log rotation scripts every few weeks.
NON-perl: I recall in *nix copying the whole file into a new one (filename.0), then something like echo /dev/null > filename. Finally, I'd gzip or bzip2 the logfile.0. YMMV.
Apply yourself to new problems without preparation, develop confidence in your ability to to meet situations as they arrise.