2

我有以下脚本来遍历特定类型的文件并获取有关datetime创建的信息:

@echo off
setlocal

call :getCreationInfo
cmd /k

:getCreationInfo
for /f "skip=5 tokens=1,2,4,5* delims= " %%a in ('dir /a:-d /o:d /t:c *.bak') do (
    if "%%~c" NEQ "bytes" (
        echo(
        @echo File Name: %%~d
        @echo Absolute Path: %%~fd
        @echo Creation Date: %%~a
        @echo Creation Time: %%~b
        echo(
    )
)

但是我如何按降序排列这个列表,比如首先创建最新的文件,然后是下一个创建的文件,然后是下一个并将它们存储在一个数组中?

我被困在这个订购的事情上,希望有人能在这里帮助我。

4

1 回答 1

2

在 /o:-d 中的 order 子句中放置连字符,而不是 /o:d。这在命令提示符屏幕中对我有用。

尝试使用此链接将结果放入数组中: 在 Windows Batch 中创建列表或数组

@echo off
setlocal

call :getCreationInfo
cmd /k

:getCreationInfo
for /f "skip=5 tokens=1,2,4,5* delims= " %%a in ('dir /a:-d /o:-d /t:c *.bak') do (
    if "%%~c" NEQ "bytes" (
        echo(
        @echo File Name: %%~d
        @echo Absolute Path: %%~fd
        @echo Creation Date: %%~a
        @echo Creation Time: %%~b
        echo(
    )
)
于 2017-08-13T19:18:36.420 回答