Пакетный скрипт: запись даты самого старого файла в директории в текстовый файл
Я пытаюсь записать дату изменения самого старого файла в каталоге в текстовый файл. На данный момент я могу записать все имена файлов (я назвал их датой, когда они были созданы, но) в порядке от самого старого до самого нового, но, кажется, не могу ограничить это, просто вывести самые старые или действительно получить измененную или созданную дату / время. Мой каталог является удаленным, если он выполняет различие, и моя текущая попытка выглядит следующим образом:
dir "\\dirxxxx\xxxxxxx\xxxxx\xxxxx\xxxxx\*.*" /b /a-d /o-d`
Любые идеи, как я могу получить дату создания или изменения файла, записанного в текстовый файл в том же каталоге?
2 ответа
Решение
Решение: используйте VBS вместо.
Option Explicit
Dim fso, path, file, recentDate, recentFile, objFileHandle
Set fso = CreateObject("Scripting.FileSystemObject")
Set recentFile = Nothing
For Each file in fso.GetFolder("\\xxxxxx\xxxxxxx").Files
If (recentFile is Nothing) Then
Set recentFile = file
ElseIf (file.DateLastModified < recentFile.DateLastModified) Then
Set recentFile = file
End If
Next
If recentFile is Nothing Then
WScript.Echo "no recent files"
Else
WScript.Echo recentFile.DateLastModified
Set objFileHandle = fso.OpenTextFile("\\Vxxxxxx\xxxxx", 2, "True")
objFileHandle.Write(recentFile.DateLastModified)
objFileHandle.Close
End If
Попробуй это:
for /f "delims=" %i in ('dir /b/o-d/a-d') do set "oldesttime=%~ti"
>"log.txt" echo %oldesttime%