特定日期时间的forfiles

时间:2018-06-08 19:33:25

标签: datetime batch-file for-loop forfiles

我正在尝试列出在特定日期时间之后修改的文件。例如,june 8 20:29,但我无法找到forfiles的这些选项。 你知道datetime选项是否适用于forfiles,或者我应该使用不同的东西? 我的批处理文件在下面。

NET USE b: /DELETE
NET USE b: "\\networkddrive\users\username" /PERSISTENT:YES
CHCP 1252 > NULL
forfiles /p b:\ /s /m *.txt /d +"06/08/2018 14:22" /c "cmd /c echo @path @fdate @ftime"  > "b:\listfiles.txt"

1 个答案:

答案 0 :(得分:0)

forfiles不会处理时间部分,只会处理日期。 我建议使用Powershell脚本:

param (
[string]$ds=((Get-Date).AddDays(-10)).ToString()
)

$dt=(Get-Date $ds)
Get-ChildItem -Path "B:\" -Filter "*.txt" | Where {($_.LastWriteTime -ge $dt)} | Sort-Object LastWriteTime,Name

将此脚本存储在* .ps1文件中以运行它。 (可选)参数是一个字符串,可以解释为日期,如“1.4.2017 17:00”。任意默认值为“现在减去10天”。