我正在寻找一种在以下场景中一致列出目录内容的方法,即
$dirs = @("C:/dir1", "C:/dir2", "C:/dir[3-5]")
foreach ($d in $dirs) {
Get-ChildItem $d
}对于第一次和第二次迭代,目录内容被列出,但是对于第三次迭代,只有匹配的目录被列出,而不是它们的内容。
请提供PowerShell v2+
发布于 2018-11-06 13:44:37
您可以使用Get-Item执行通配符展开,然后获取每个匹配的子项:
foreach ($dir in Get-Item $dirs) {
Get-ChildItem -LiteralPath $dir
}发布于 2018-11-06 13:37:44
使用Get-ChildItem -LiteralPath $d而不是Get-ChildItem $d,因为第一个样条变量将用作允许通配符表达式的-Path。-LiteralPath $d没有。
$dirs = @("C:/dir1", "C:/dir2", "C:/dir[3-5]")
foreach ($d in $dirs) {
Get-ChildItem -LiteralPath $d
}https://stackoverflow.com/questions/53172833
复制相似问题