我正在尝试将目录中最旧文件的修改日期写入文本文件。目前我可以用最旧到最新的顺序写出所有文件名(我将它们命名为创建它们的日期),但似乎不能将此限制为仅输出最旧的或确实获得修改或创建的日期/时间。我的目录是远程的,以防它产生差异,我当前的尝试如下:
dir "\\dirxxxx\xxxxxxx\xxxxx\xxxxx\xxxxx\*.*" /b /a-d /o-d`
我是如何知道如何将文件的创建或修改日期写入同一目录中的文本文件?
答案 0 :(得分:3)
试试这个:
for /f "delims=" %i in ('dir /b/o-d/a-d') do set "oldesttime=%~ti"
>"log.txt" echo %oldesttime%
答案 1 :(得分:0)
解决方案:改为使用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