Solved

Winbatch script to check a file's size and overwrite

Posted on 2009-04-01
9
829 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
 

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
Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.

 

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 125 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

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
For loop to add numbers 3 59
HP PC Hardware Diagnostics UEFI 11 113
Batch to Restart Remote Computers 4 77
Run command in each subfolder using batch file 7 49
Sometimes people don't understand why download speed shows differently for Windows than Linux.Specially, this article covers and shows the solution for throughput difference for Windows than a Linux machine. For this, I arranged a test scenario.I…
Deploying a Microsoft Access application in a Citrix environment is not difficult but takes a few steps. However, Citrix system people are often of little help, as they typically know next to nothing about Access. The script provided here will take …
A company’s greatest vulnerability is their email. CEO fraud, ransomware and spear phishing attacks are the no1 threat to a company’s security. Cybercrime is responsible for the largest loss of money to companies today with losses projected to r…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

948 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

20 Experts available now in Live!

Get 1:1 Help Now