列出隐藏的子目录和大小

Pet*_*ter 5 powershell powershell-2.0

我需要使用PowerShell获取其大小的子目录列表.

以下PowerShell代码执行我想要的操作,但它不适用于隐藏目录.

Get-ChildItem | Where-Object { $_.PSIsContainer } | ForEach-Object { $_.Name + ": " + "{0:N2}" -f ((Get-ChildItem $_ -Recurse | Measure-Object Length -Sum -ErrorAction SilentlyContinue).Sum / 1MB) + " MB" }
Run Code Online (Sandbox Code Playgroud)

我尝试在Windows中显示隐藏目录,但这不起作用.现在,我只是确保每个子目录都没有隐藏,但这并不理想.是否有一个简单的参数可以强制此代码获取隐藏文件和文件夹的信息?

我希望这可以与PowerShell 2一起使用.

The*_*ian 13

你的答案实际上在你的问题中.Get-ChildItem-Force参数将使其包含隐藏文件和目录.

Get-ChildItem -Force | Where-Object { $_.PSIsContainer } | ForEach-Object { $_.Name + ": " + "{0:N2}" -f ((Get-ChildItem $_ -Recurse -Force | Measure-Object Length -Sum -ErrorAction SilentlyContinue).Sum / 1MB) + " MB" }
Run Code Online (Sandbox Code Playgroud)

  • 您还可以使用`Get-ChildItem -Attributes Hidden, !Hidden` 或缩写为`Get-ChildItem -At H,!H` (2认同)
  • 即使是缩写的“-At H,!H”也比“-Force”长,所以我真的不明白使用它的意义。 (2认同)