使用Get-childitem获取过去3天内修改过的文件列表

Tri*_*ene 12 powershell powershell-2.0

代码就像现在一样

get-childitem c:\pstbak\*.* -include *.pst | Where-Object { $_.LastWriteTime -lt (get-date).AddDays(-3)} |
Run Code Online (Sandbox Code Playgroud)

基本上我要做的是获取上面文件夹中所有PST文件的列表,基于它们比3天更新.然后我想算一下结果.上面的代码没有错误,但带来零结果(文件夹中肯定有PST文件比三天更新.任何人都有任何想法?

Dav*_*ton 34

试试这个:

(Get-ChildItem -Path c:\pstbak\*.* -Filter *.pst | ? {
  $_.LastWriteTime -gt (Get-Date).AddDays(-3) 
}).Count
Run Code Online (Sandbox Code Playgroud)


小智 15

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

Get-ChildItem -Path . -Recurse| ? {$_.LastWriteTime -gt (Get-Date).AddDays(-4)}
Run Code Online (Sandbox Code Playgroud)

  • 相同的命令不使用?别名:`Get-ChildItem -Path.-Recurse | Where-Object {$ _.LastWriteTime -gt(Get-Date).AddDays(-4)}` (2认同)