如何用Get-ChildItem筛选文件夹名并包含父目录导出CSV?
如何让PowerShell脚本导出的CSV包含指定根目录?
你可以通过将根目录对象与子目录结果合并的方式,让导出的CSV包含D:\GENERAL本身。以下是修改后的脚本:
# 获取根目录的对象 $rootDirectory = Get-Item -Path "D:\GENERAL" # 获取指定深度的子目录,并与根目录合并 $allDirectories = $rootDirectory + (Get-ChildItem -Path "D:\GENERAL" -Recurse -Directory -Depth 5) # 导出包含根目录的完整列表到CSV $allDirectories | Select-Object FullName | Export-Csv c:\tmp\out.csv -NoTypeInformation -Encoding UTF8
原理说明
原脚本中Get-ChildItem -Recurse -Directory只会返回指定路径下的子目录,不会包含路径本身。通过Get-Item获取根目录的对象,再用+运算符将其与子目录结果合并,就能得到包含根目录的完整目录列表。
导出结果示例
运行修改后的脚本,CSV内容将符合你的预期:
"FullName" "D:\GENERAL" "D:\GENERAL\IT" "D:\GENERAL\SOFTWARE"
内容的提问来源于stack exchange,提问作者Arbelac
相关产品推荐
相关产品推荐

