Solved

Batch file, script, file rotate on size

Posted on 2014-03-03
18
1,898 Views
Last Modified: 2014-03-05
Hi experts,

Looking for your kind assistance and help.

I have server application it generate continues log always.
I have schedule running everyday the file will be moved to the new location.
But the file size is around 200mb in day...it is very difficult to manage the storage.
I am looking for help..how to zip compress the file in same name by batch file so that it  will do automatically.


@echo off
set datetime=%date:~-4%_%date:~-7,2%_%date:~-10,2%_%time:~0,2%_%time:~3,2%_%time:~6,2%
echo %datetime%
move "D:\Program\rsa\key\log\*.audit" "D:\Program\Backup\to HP\AUDIT_TEXT_Files\PRI_RSA_Audit_Text_File_%datetime%.audit
0
Comment
Question by:Skumar_CCSA
  • 9
  • 6
  • 3
18 Comments
 
LVL 53

Accepted Solution

by:
Bill Prew earned 500 total points
ID: 39901190
Here is a script that does what you describe.  It requires 7-ZIP which can be downloaded from:

http://www.7-zip.org/

@echo off

REM Specify folders and files to operate on
set BaseDir=D:\Program\rsa\key\log
set DestDir=D:\Program\Backup\to HP\AUDIT_TEXT_Files
set ExtFilter=audit
set ZipFilter=gz
set Zip=c:\program files\7-zip\7za.exe

REM Current date time in YYYY_MM_DD_hh_mm_ss format for timestamp on moved files
set datetime=%date:~-4%_%date:~-7,2%_%date:~-10,2%_%time:~0,2%_%time:~3,2%_%time:~6,2%
echo %datetime%

REM Move all matching files to destination folder renaming with date/time stamp
"%Zip%" a -tgzip "%DestDir%\PRI_RSA_Audit_Text_File_%datetime%.%ZipFilter%" "%BaseDir%\*.%ExtFilter%"
del "%BaseDir%\*.%ExtFilter%" /y

REM Only keep 30 newest files in destination folder
for /F "tokens=* skip=30" %%A in ('dir /b /a-d /tc /o-d "%DestDir%\*.%ZipFilter%"') do del "%DestDir%\%%~A"

Open in new window

~bp
0
 
LVL 26

Expert Comment

by:skullnobrains
ID: 39901770
you may want to look into logrotate equivalents for windows

logrotate native reimplementation
http://sourceforge.net/projects/logrotatewin/

python implementation
http://sourceforge.net/directory/security-utilities/logging/log-rotation/os:linux/freshness:recently-updated/

bundled cygwiin ddls and original logrotate program
https://www.itefix.no/i2/logwot8
0
 

Author Comment

by:Skumar_CCSA
ID: 39902524
i have checked in another server, it automatically compressed..
the format is .gz
i think it happens without instaling any zip software.
can you please help.
0
Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

 
LVL 26

Expert Comment

by:skullnobrains
ID: 39902583
beginnig with XP, window comes bundled with the possibility to read and write zip files trough the explorer, so the zip dll has to be available to programs wether a zip soft is installed or not

it is fairly possible that your server directly writes compressed logs. if you have no uncompressed logs at all, it is sure to be the case

in your case, since the extension is gzip, it is more likely that your server comes bundled with gzip and is able to take care of compression itself. wether it writes compressed logs or takes care of compression + rotation from time to time is a matter of what software that is and how it is configured

the feature is very common in servers targetted for the window platform (and that do not use the event log) precisely because windows does not have a logrotate program.
0
 

Author Comment

by:Skumar_CCSA
ID: 39902587
my server is win 2008 r2
0
 
LVL 53

Expert Comment

by:Bill Prew
ID: 39903056
What software is generating those compressed log files, my guess would be that it incorporates the capability within it.  I don't believe there is any native Windows capability to generate gzip files.

~bp
0
 

Author Comment

by:Skumar_CCSA
ID: 39903064
Software : VASCO , Identikey Authentication Server....runs with PostgreSQL
0
 
LVL 53

Expert Comment

by:Bill Prew
ID: 39903074
Okay, not familiar with that, and could find anything quickly on their website about compressing log files, so not sure if it produces the gzip files you are seeing on another server, or if a utility is being used there.

~bp
0
 

Author Comment

by:Skumar_CCSA
ID: 39903082
Yes actually i have the option for those log file to archive and compress.
But for audit file ..I did not have that option in the software.
0
 
LVL 53

Expert Comment

by:Bill Prew
ID: 39903090
Ah, okay, so in that case the software has built in support for generating some files in gzip format, but you will have to do the audit file yourself, using something like 7ZIP.

~bp
0
 

Author Comment

by:Skumar_CCSA
ID: 39903101
Yes...correct.
I am able to unzip those file using 7zip...
Also like to check with you....is it possible to do zip in regular way as we have in built compress function in windows OS...I seen when I compress the file..the size become 20mb from 200mb.
0
 
LVL 53

Expert Comment

by:Bill Prew
ID: 39903624
What are you referring to by "in built compress function in windows"?

~bp
0
 

Author Comment

by:Skumar_CCSA
ID: 39903719
compressed ("zipped") folder feature in widows
0
 
LVL 53

Expert Comment

by:Bill Prew
ID: 39903733
What is the command you use at a windows command line for that?

~bp
0
 

Author Comment

by:Skumar_CCSA
ID: 39903778
I see the command in this link...
I already tried to do...but did not help...
thought of posting for experts help...
thanks to help..
http://technet.microsoft.com/en-us/library/bb490884.aspx
0
 

Author Comment

by:Skumar_CCSA
ID: 39903869
Like to check is it possible ?
Batch file will run everyday or one in 4 hours. ( batch/ script file though task scheduler)
When the log.audit file exceeds more then 500MB, it should start renaming the file and zip the file.
keep latest 30 files.

Source  - D:\abc\log.audit
Destination File : D:\Auth_Audit_currentdateandtime.zip

Zip to be used windows feature....as I have restriction that no software's installed.

thanks to help...
0
 

Author Closing Comment

by:Skumar_CCSA
ID: 39905336
It worked greatly in my testing server having the software installed.
but i dont have permissions to install the software.
however the solution given...it helped me.
0
 
LVL 26

Expert Comment

by:skullnobrains
ID: 39906193
0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

A Bare Metal Image backup allows for the restore of an entire system to a similar or dissimilar hardware. They are highly useful for migrations and disaster recovery. Bare Metal Image backups support Full and Incremental backups. Differential backup…
Join Greg Farro and Ethan Banks from Packet Pushers (http://packetpushers.net/podcast/podcasts/pq-show-93-smart-network-monitoring-paessler-sponsored/) and Greg Ross from Paessler (https://www.paessler.com/prtg) for a discussion about smart network …
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…
With the advent of Windows 10, Microsoft is pushing a Get Windows 10 icon into the notification area (system tray) of qualifying computers. There are many reasons for wanting to remove this icon. This two-part Experts Exchange video Micro Tutorial s…

815 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

8 Experts available now in Live!

Get 1:1 Help Now