PowerShell 5.1目录统计命令输出至TXT文件为空求助
问题原因及解决办法
- 问题根源:你使用的
Write-Host是直接将内容输出到控制台,不会进入PowerShell的输出管道,因此>重定向符号无法捕获这些内容,导致生成的txt文件为空。 - 解决方法:替换
Write-Host为直接输出字符串(PowerShell默认会将字符串送入输出管道),或者使用Write-Output命令。
修改后的命令示例:
dir -Recurse | ?{ $_.PSIsContainer } | %{ "$($_.FullName) $( (dir $_.FullName | Measure-Object).Count )" } > list.txt
如果想提升命令效率(避免重复遍历目录),可以用更清晰的参数写法:
Get-ChildItem -Recurse -Directory | ForEach-Object { $fileCount = (Get-ChildItem -File -Path $_.FullName).Count "$($_.FullName) $fileCount" } | Out-File list.txt
内容的提问来源于stack exchange,提问作者brink
相关产品推荐
相关产品推荐

