Powershell - 将文件夹结构导出到 txt 或 xls,但仅限于 3 个文件夹的深度并且没有文件
Powershell - Export structure of folders to txt or xls but only to a depth of 3 folders and no files
我想从服务器导出一个文件夹结构,它有点大。
所以我希望将列表缩小到最多 3 个文件夹的深度并且不显示任何文件。所以实际上我有一部分答案 here 已经使用 Get-ChildItem。
但是我缺少缩小列表范围的参数。
有什么想法吗?
谢谢
编辑:导出到文本文件或 excel sheet - 无 robocopy
不需要 Powershell 脚本,因为 Robocopy 是较新 Windows 版本中默认安装的一部分。它支持复制部分目录树。开关 /lev:<N>
仅复制源目录树的前 N 层。
其他开关如 /e
(空目录)和 /xf *
(排除所有文件)对于只复制目录结构很有用。
使用 -Directory
标志仅获取文件夹,使用 -Recurse
包含子文件夹,使用 -Depth
控制向下移动的距离。 0
是当前目录文件夹,1
包括它们的子文件夹等。
您可以结合 Select-Object
来指定 select 的属性,以及 Export-Csv
或 Out-File
来创建 csv/txt 文件。
Get-ChildItem -Recurse -Directory -Depth 3 |
Select-Object FullName |
Export-Csv Test.csv -NoTypeInformation
我想从服务器导出一个文件夹结构,它有点大。 所以我希望将列表缩小到最多 3 个文件夹的深度并且不显示任何文件。所以实际上我有一部分答案 here 已经使用 Get-ChildItem。 但是我缺少缩小列表范围的参数。 有什么想法吗?
谢谢
编辑:导出到文本文件或 excel sheet - 无 robocopy
不需要 Powershell 脚本,因为 Robocopy 是较新 Windows 版本中默认安装的一部分。它支持复制部分目录树。开关 /lev:<N>
仅复制源目录树的前 N 层。
其他开关如 /e
(空目录)和 /xf *
(排除所有文件)对于只复制目录结构很有用。
使用 -Directory
标志仅获取文件夹,使用 -Recurse
包含子文件夹,使用 -Depth
控制向下移动的距离。 0
是当前目录文件夹,1
包括它们的子文件夹等。
您可以结合 Select-Object
来指定 select 的属性,以及 Export-Csv
或 Out-File
来创建 csv/txt 文件。
Get-ChildItem -Recurse -Directory -Depth 3 |
Select-Object FullName |
Export-Csv Test.csv -NoTypeInformation