Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 495
  • Last Modified:

calculate the seconds between the modification time of a file and the current time

Hi i'm making a batch file to check the current time and the modification time of a file.
Then I want to extract the modification time of the current time, and this is less then 1 minute it needs to exit the program.

I think the code needs to be like this
MODIFICATION=
CURRENT=
DIFFERENCE=CURRENT - MODIFICATION

if difference < 1 minute (
exit
) else (
cd C:\wamp\bin\mysql\mysql5.5.8\bin\
mysqldump -u root test > Databases/test.sql
copy C:\wamp\bin\mysql\mysql5.5.8\bin\Databases\test.sql C:\Users\Maikel\Desktop\GITstage\PDFTool
cd C:\Users\Maikel\Desktop\GITstage\PDFTool
git add test.sql
git commit -m "Updating database"
)
exit

Open in new window


The code after the else is correct, but I don't know how I can calculate the difference between the modification time and the current time.
I know how i can check the modification time of "test.sql". It's done by this
 
@echo off
set "file=C:\Users\Maikel\Desktop\GITstage\PDFTool\test.sql"
for /d %%a in ("%file%") do echo %%~ta

Open in new window


If somebody can help me out, I would appreciate it
0
Silencer001
Asked:
Silencer001
  • 4
  • 4
1 Solution
 
Steve KnightIT ConsultancyCommented:
Have a look at this script of mine here:

http://scripts.dragon-it.co.uk/links/batch-files-older-than

This is for 20 mins, but change the 20 to 1...

On the way out shortly but if you want help making that work please ask

Steve
0
 
Steve KnightIT ConsultancyCommented:
Bit more:
@Echo off
for /f %%a in ('cscript //nologo checkfiletime.vbs test.sql') do set check=%%a
if not "%check%"=="OK" (
  echo File is now %check% minutes old
  echo do your stuff here
)


REM Save this as Checkfiletime.vbs
DIM filename, filesys, file1, timediff

If Wscript.Arguments.Count = 0 Then
  Wscript.echo "9999 Error - no file specified"
ELSE
  Set filesys = CreateObject("Scripting.FileSystemObject")
  Set file1 = filesys.GetFile(wscript.arguments(0))
  timediff = int((now - file1.DateCreated) * 60 * 24)
 
  'Send age in minutes back to console:
  if timediff >=1 then
    wscript.echo timediff
  else
    wscript.echo "OK"
  end if

End if
0
 
Silencer001Author Commented:
Looks nice, i only need to adjust it, so he goes into this folder C:\Users\Maikel\Desktop\GITstage\PDFTool

And needs to check the test.sql file in that folder. If you can help me with adjusting your script that it does that, it would be really great.

Silencer001
0
Microsoft Certification Exam 74-409

VeeamĀ® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

 
Silencer001Author Commented:
Didn't refreshed, so didn't saw your second comment.
Thanks for the quick response.

Works perfectly, now i just need to do the if structure. I'll leave this open, so if I need extra help I can always ask it directly, when I'm finished with the if structure and it works, I accept your solution and award points :)
0
 
Steve KnightIT ConsultancyCommented:
no problem, just shout if you need more, will be back later.

Steve
0
 
Silencer001Author Commented:
Steve you're the best ;-)

It works like a charm ;-)
The only thing I changed was
 
timediff = int((now - file1.DateCreated) * 60 * 24)

Open in new window

to
 
timediff = int((now - file1.DateLastModified) * 60 * 24)

Open in new window


Thanks for the quick and 100% helpfull answer ;-)
0
 
Silencer001Author Commented:
Worked perfect.

Looks at the creation date of the file and extracts this from the date of today.
0
 
Steve KnightIT ConsultancyCommented:
Would have helped if I'd read it properly but at least we got there!  No problem.

Steve
0

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 4
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now