如何获取自给定日期以来修改的所有文件的完整、裸路径的递归列表?

如何获取自给定日期以来修改的所有文件的完整、裸路径的递归列表?

我需要获取指定路径下所有子目录中与指定掩码匹配且自指定日期以来已被修改的所有文件的列表。我该怎么做?

答案1

我发布这个问题是为了以后需要时可以谷歌搜索。如果你有更好的方法,请随意添加其他答案!

获取自 n 天前以来修改的所有文件:

(Get-ChildItem -Path C:\MyPath -Recurse -Filter *.sql |?{ $_.LastWriteTime -gt (Get-Date).AddDays(-180)})|foreach{$_.FullName} > changes.txt

其中 180 是天数(其中 -1 是昨天),其中 *.sql 是与我需要的文件匹配的文件掩码,其中 C:\MyPath 是要递归的根目录。

获取自特定日期以来修改的所有文件:

(Get-ChildItem -Path C:\MyPath -Recurse -Filter *.sql |?{ $_.LastWriteTime -gt '4/23/2019'})|foreach{$_.FullName} > changes.txt

我需要自当地时间 2019 年 4 月 23 日午夜以来修改的文件,其中 *.sql 是与我需要的文件匹配的文件掩码,其中 C:\MyPath 是要递归的根目录。

它们都给出了以下格式的列表:

C:\MyPath\file001.sql
C:\MyPath\subdir\file002.sql

相关内容