首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Get-childitem获取最近3天内修改的文件列表

使用Get-childitem获取最近3天内修改的文件列表
EN

Stack Overflow用户
提问于 2013-06-28 22:10:18
回答 4查看 119.4K关注 0票数 18

代码就像现在这样

代码语言:javascript
复制
get-childitem c:\pstbak\*.* -include *.pst | Where-Object { $_.LastWriteTime -lt (get-date).AddDays(-3)} |

本质上,我试图做的是获得一个列表中的所有PST文件在上述文件夹的基础上,他们是新的3天以上。然后我想计算一下结果。上面的代码没有错误,但返回的结果为零(文件夹中肯定有比三天更新的PST文件。有谁知道吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-06-28 23:56:36

试试这个:

代码语言:javascript
复制
(Get-ChildItem -Path c:\pstbak\*.* -Filter *.pst | ? {
  $_.LastWriteTime -gt (Get-Date).AddDays(-3) 
}).Count
票数 44
EN

Stack Overflow用户

发布于 2016-03-26 00:31:09

与之前的响应非常相似,但来自当前目录,它查看任何文件,并且仅查找4天前的文件。这就是我的研究所需要的,上面的答案都非常有帮助。谢谢。

代码语言:javascript
复制
Get-ChildItem -Path . -Recurse| ? {$_.LastWriteTime -gt (Get-Date).AddDays(-4)}
票数 24
EN

Stack Overflow用户

发布于 2015-10-10 19:42:40

这里是Dave Sexton提供的解决方案的一个小更新。很多时候,你需要多个过滤器。Filter参数只能接受单个字符串,而-Include参数可以接受字符串数组。如果你有一个大的文件树,那么只比较一次日期也是有意义的,而不是针对每个文件。以下是我的更新版本:

代码语言:javascript
复制
$compareDate = (Get-Date).AddDays(-3)    
@(Get-ChildItem -Path c:\pstbak\*.* -Filter '*.pst','*.mdb' -Recurse | Where-Object { $_.LastWriteTime -gt $compareDate}).Count
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17366675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档