Solved

create file date time windows

Posted on 2014-07-18
11
231 Views
Last Modified: 2014-07-28
Find the latest created file in a directory:
The below command would print the files in the order of creation date & time. In this list the file that is created very recently would be displayed in the last position.

dir /A:-D /T:C /O:D
Example:

C:\>dir /A:-D /T:C /O:D
02/06/2012  07:38 PM                 4 4.txt
02/06/2012  07:39 PM                 0 5.txt
02/06/2012  10:45 PM                13 10.txt
02/06/2012  10:47 PM                13 newfile.t
02/11/2012  08:24 PM                83 2.bat
02/11/2012  08:26 PM             5,219 data.txt
02/11/2012  08:27 PM             5,219 data2.txt
02/12/2012  11:28 PM                98 3.bat
02/13/2012  10:47 AM               131 echo.bat
0
Comment
Question by:gsgi
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 4
11 Comments
 
LVL 13

Assisted Solution

by:duncanb7
duncanb7 earned 200 total points
ID: 40205783
Please take a look at the following code for  DOS command batch file and for reference only ,and it is NOT fully tested

Duncan
@echo off
dir /A:-D /T:C /O:D |find ":">junk.txt
for /f "tokens=1 delims=" %%a in ('type junk.txt') do set newest=%%a
if not "%newest%"=="" echo Latest created file is "%newest%"
del junk.txt

Open in new window

0
 
LVL 38

Expert Comment

by:Gerwin Jansen, EE MVE
ID: 40206185
Do you have the tail command available? If so you can do this:
dir /A:-D /T:C /O:D | findstr /r /c:"^[0-9]" | tail -1

Open in new window

The findstr command will filter only lines starting with a number and tail -1 will show you only the last line of that filtered output.

Tail is part of a set of WIn32 ported UNIX tools: http://unxutils.sourceforge.net/
0
 
LVL 13

Author Comment

by:gsgi
ID: 40206538
Thanks Everyone!!!!
0
How Do You Stack Up Against Your Peers?

With today’s modern enterprise so dependent on digital infrastructures, the impact of major incidents has increased dramatically. Grab the report now to gain insight into how your organization ranks against your peers and learn best-in-class strategies to resolve incidents.

 
LVL 38

Expert Comment

by:Gerwin Jansen, EE MVE
ID: 40206572
@gsgi - Did you try the first comment that you've chosen as an answer? I did and I got this as reply:

Latest created file is "07/19/14  09:38 PM                 0 junk.txt"

So I believe you may have chosen the wrong answer, you can ask for attention using the "Request Attention" button above.
0
 
LVL 38

Accepted Solution

by:
Gerwin Jansen, EE MVE earned 300 total points
ID: 40206573
If you want to use the first comment as a solution, you need to change the following to make it work:

@echo off
dir /A:-D /T:C /O:D |find ":">%TEMP%\junk.txt
for /f "tokens=1 delims=" %%a in ('type %TEMP%\junk.txt') do set newest=%%a
if not "%newest%"=="" echo Latest created file is "%newest%"
del %TEMP%\junk.txt

Open in new window


The temporary file junk.txt is now moved to %TEMP% - so no target for the script above. If you move the script above to %TEMP% as well and run it from there it is working.

So:

C:\>%TEMP%\findfile.cmd

would give you:

Latest created file is "02/13/2012  10:47 AM               131 echo.bat"

(assuming that your %TEMP% is not equal to C:\)
0
 
LVL 13

Assisted Solution

by:gsgi
gsgi earned 0 total points
ID: 40206581
I didn't because I could read his logic; I assume his .bat file is fixable.  Is there something about his bat file that would not be fixable?   I do not have the tail command.  I try to solve for solutions using native commands when possible.

If we put junk.txt somewhere else does it work?  His .bat file makes a junk.txt file which becomes the latest file.  Here I put junk.txt in c:\

@echo off
dir /A:-D /T:C /O:D |find ":"> c:\junk.txt
for /f "tokens=1 delims=" %%a in ('type c:\junk.txt') do set newest=%%a
if not "%newest%"=="" echo Latest created file is "%newest%"
del junk.txt

The other way to fix this is to have it cycle through all but the last file in the listing.

-gsgi
0
 
LVL 38

Expert Comment

by:Gerwin Jansen, EE MVE
ID: 40206584
See my comment above, all needed corrections are there. I tested and it worked.
0
 
LVL 13

Author Comment

by:gsgi
ID: 40206599
Would this work - I am not a .bat file scripter so my syntax is probably wrong...  By using temporary for the last line of the listing and setting newest to temporary each time through the loop, newest becomes the 2nd to last filename in the listing, so we do not grab junk.txt

@echo off
dir /A:-D /T:C /O:D |find ":">junk.txt
set temporary=""
for /f "tokens=1 delims=" %%a in ('type junk.txt') do {set newest=temporary set temporary=%%aa}
if not "%newest%"=="" echo Latest created file is "%newest%"
del junk.txt

-gsgi
0
 
LVL 38

Expert Comment

by:Gerwin Jansen, EE MVE
ID: 40206630
The idea is good, with some more modifications, this is working as long as you don't have the script in the folder where you run it:
@echo off
SETLOCAL EnableDelayedExpansion
dir /A:-D /T:C /O:D |find ":">junk.txt
set temporary=""
for /f "tokens=1 delims=" %%a in ('type junk.txt') do set newest=!temporary! && set temporary=%%a
if not "%newest%"=="" echo Latest created file is "%newest%"
del junk.txt

Open in new window


but my suggestion above in http:#a40206573 is working as well.
0
 
LVL 13

Author Closing Comment

by:gsgi
ID: 40223684
Thanks for participating in this question.  I originally selected duncanb7 as the best answer because I could follow his thinking and his answer used no extra tools or utilities.  Gerwin Jansen wrote to me asking why I would select an answer that did not work as the best solution and he fixed the solution so that it works.  To properly represent correct code in the EE database, I am changing the best answer to Gerwin Jansen's fix for the code originally offered by duncanb7.  Thanks, gsgi
0

Featured Post

Why You Need a DevOps Toolchain

IT needs to deliver services with more agility and velocity. IT must roll out application features and innovations faster to keep up with customer demands, which is where a DevOps toolchain steps in. View the infographic to see why you need a DevOps toolchain.

Question has a verified solution.

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

by Nathan Brom/Bromy2004 Introduction There are numerous websites out there for any different type of program you can imagine.  Of those, you'll need to decide which ones are legitimate and aren't trying to steal your money or infect your comput…
Many admins will agree: WSUS is is a nice invention but using it on the client side when updating a newly installed computer is still time consuming as you have to do several reboots and furthermore, the procedure of installing updates, rebooting an…
This video Micro Tutorial explains how to clone a hard drive using a commercial software product for Windows systems called Casper from Future Systems Solutions (FSS). Cloning makes an exact, complete copy of one hard disk drive (HDD) onto another d…
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…

724 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