Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Winbatch script to check a file's size and overwrite

Posted on 2009-04-01
9
Medium Priority
?
839 Views
Last Modified: 2012-05-06
I need a Winbatch/VB script that will check the size of a file.  If the file is the predetermined size, it overwrite it with another file.  If the file is larger than a the predetermined size, it will do nothing.  I need the script to look in 2 specific directories for the file.

Can this be done?  I have been unsuccessful in getting this to work with Winbatch, but I admit I am just a novice at scripting right now.

Thanks for any help!
0
Comment
Question by:Johnnynoname
  • 5
  • 4
9 Comments
 
LVL 6

Expert Comment

by:Justin_W_Chandler
ID: 24044063
Do you mean that if the file is smaller than a set size, it should be overwritten?
0
 

Author Comment

by:Johnnynoname
ID: 24044270
I have a file that exists in both "C:\test" and "C:\test1" on the same machine.  

I need both files to be looked at and if they are the 2KB standard file size, then they get overwritten with the new 2KB file.  If they are any bigger then the 2KB size, they get ignored.
0
 
LVL 6

Expert Comment

by:Justin_W_Chandler
ID: 24049963
I'll get started for you. In the meantime, are you running this against a single file or multiple files?
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:Johnnynoname
ID: 24050603
It's the same file, but in two separate directories on the local drive.  The filename is the same, but the paths are different
0
 

Author Comment

by:Johnnynoname
ID: 24152437
Well....  this has been helpful!  I guess we can close this issue
0
 
LVL 6

Expert Comment

by:Justin_W_Chandler
ID: 24152681
My goodness I'm sorry I didn't click to track this question so I forgot to submit the script. I'm done with it, and I'll upload it for you within a few moments.

Justin Chandler
0
 
LVL 6

Accepted Solution

by:
Justin_W_Chandler earned 500 total points
ID: 24152942
Here you go! Again, sorry for the delay

Justin Chandler
@echo off
setlocal enabledelayedexpansion
 
:: Set constant here. const_targetFileSize is in bytes
set const_targetFileSize=2048
set const_fileToCheck=FILE2CHK.TXT
set const_newFileSource=c:\temp
 
for /f "skip=5 tokens=4" %%A in ('dir /-c c:\test\%const_fileToCheck%') do (
   set var_fileSize=%%A
   if !var_fileSize! gtr %const_targetFileSize% copy /y "%const_newFileSource%\%const_fileToCheck%" c:\test
   echo Old file size is !var_fileSize!
   goto :exit_test)
:exit_test
 
for /f "skip=5 tokens=4" %%A in ('dir /-c c:\test1\%const_fileToCheck%') do (
   set var_fileSize=%%A
   if !var_fileSize! gtr %const_targetFileSize% copy /y "%const_newFileSource%\%const_fileToCheck%" c:\test1
   echo Old file size is !var_fileSize!
   goto :exit_test1)
:exit_test1

Open in new window

24286570-Check-file-size-and-ove.txt
0
 

Author Comment

by:Johnnynoname
ID: 24207996
Thanks!  I'll take a look and see what's what
0
 

Author Comment

by:Johnnynoname
ID: 24270411
Sorry about the delay, I was out of town for a few days.  Thanks for the script!  It works like a charm!
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

How to remove superseded packages in windows w60 or w61 installation media (.wim) or online system to prevent unnecessary space. w60 means Windows Vista or Windows Server 2008. w61 means Windows 7 or Windows Server 2008 R2. There are various …
Use this article to create a batch file to backup a Microsoft SQL Server database to a Windows folder.  The folder can be on the local hard drive or on a network share.  This batch file will query the SQL server to get the current date & time and wi…
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…
This lesson discusses how to use a Mainform + Subforms in Microsoft Access to find and enter data for payments on orders. The sample data comes from a custom shop that builds and sells movable storage structures that are delivered to your property. …
Suggested Courses

971 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