![](/img/trans.png)
[英]How to use PowerShell Get-ChildItem to retrieve files AND folders?
[英]get-childitem find files in folders with same names
我需要检查文件夹中命名为“.policy”的所有文件是否为“azureDeploy.parameters.json”或“azureDeploy.json”
如果我只希望它检查一个文件夹,我只提供完整路径,如下所示:
$azureDeployFiles = @('azureDeploy.parameters.json', 'azureDeploy.json')
(Get-ChildItem -path ..\..\fes\.policy -file -Recurse).name | Should -BeIn $azureDeployFiles
这有效。 但我有多个文件夹,名为'.\\..\\..\\.policy'
,我想检查所有具有该命名的文件夹是否仅包含命名为“azureDeploy.parameters.json”或“azureDeploy”的文件。 json'
您可以在Directory
属性上使用Where-Object
指定“仅名为 X 的文件夹中的文件”:
$azureDeployFiles = @('azureDeploy.parameters.json', 'azureDeploy.json')
Get-ChildItem -path ..\..\ -Recurse -File |
Where Directory -Like "*\.policy" |
# example checking file names with -In
Foreach { $_.Name -In $azureDeployFiles }
继续我的评论。 . .借助管道的一点帮助,我们可以使用Where-Object
过滤具有该特定名称的目录:
$azureDeployFiles = @('azureDeploy.parameters.json', 'azureDeploy.json')
Get-ChildItem -Path '.\MyPath' -Include $azureDeployFiles -Recurse |
Where-Object Directory -Like '*\.Policy'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.