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