http://qs321.pair.com?node_id=1018463


in reply to There is a space issue in the prod server, its require to delete the old log lines i.e. the log lines which tracked on 2011 and past from all the applications event-logs

First of all, find should give you all of your files with a single command:
find /rms -name 'COOL-event-log*' -exec <perl-script> {} ';'
Unless there are files in the /rms directory tree with the same name that you don't want to edit. You should be able to modify the command to exclude those.

Does this application keep these logfiles open for as long as it's running, and is it running all the time? Because if it doesn't close the file between runs, then you can't do this at all.

Are you sure the application won't try to run while your script is running? If it does, then you'll have a race-condition.

Parsing a single event file in a perl script to remove old entries is a pretty simple program. It can open the file passed to it, write the edited results to the '.new' file, then move it over

fnord