忽略Powershell中Get-childItem

时间:2017-03-22 16:43:11

标签: powershell

我试图以递归方式从具有多个子文件夹的文件夹中获取文件。我注意到Windows XP在文件夹中创建了这个5b .... cb \ amd64文件,它一直让我拒绝访问访问权限。

  

Get-ChildItem:拒绝访问路径。

我没有这些机器的管理员权限,我想要做的就是跳过这些文件夹。

有办法做到这一点吗?这是我试过没有成功的。抑制这些消息是不是一个好主意,因为它不会破坏脚本?任何帮助将不胜感激。

Get-ChildItem $sourceDir -Recurse  | ? { $_.FullName -notlike '*\5b...cb\*'} 
| Where-Object {$_.CreationTime.Date -eq ((Get-Date).Date)} | 
foreach {
    Write-Host $_
}

1 个答案:

答案 0 :(得分:4)

您看到的错误由Get-ChildItem抛出,因此尝试过滤管道中的无法访问的文件将无济于事。您需要使用ErrorAction common parameter

来抑制原始错误
Get-ChildItem $sourceDir -Recurse -ErrorAction SilentlyContinue | ...