如何在 PowerShell 中控制 Get-ChildItem 的递归?

powershellmicrosoft technologiessoftware & coding

当 –Depth 参数与 Get-ChildItem 一起使用时,它会控制显示子文件夹及其内容的递归。例如,如果 –Depth 参数设置为 1,则它将仅显示父文件夹及其直接子文件夹的内容,而不会显示子文件夹的子文件夹。

命令

指定 –Depth 参数时,无需添加 –Recursion 参数。它将自动设置深度级别。

Get-ChildItem D:\Temp\ -Depth 1

输出

PS C:\WINDOWS\system32> Get-ChildItem D:\Temp\ -Depth 1
    Directory: D:\Temp
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       13-12-2019     09:52                GPO_backup
d-----       24-11-2018     11:31                LGPO
-a----       07-05-2018     23:00            301 cars.xml
-a----       29-12-2017     15:16           4526 healthcheck.html
-a----       29-12-2017     15:16           4526 healthcheck1.html
-a----       08-12-2017     10:24          48362 servicereport.html
-a----       08-12-2017     10:24          48362 servicereport1.html
-a----       08-12-2017     10:16            393 style.css
-a----       08-12-2017     11:29           7974 Test.xlsx
-a----       25-10-2017     08:13            104 testcsv.csv
-a----       12-12-2017     23:04           1034 testhtmoutput.html
    Directory: D:\Temp\GPO_backup
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       24-11-2018     11:34                {C9C3DB4C-2E51-4201-B3C3-7C0F1ACECBE9}
    Directory: D:\Temp\LGPO
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----       01-06-2017     03:22         410088 LGPO.exe
-a----       01-06-2017     02:25         638115 LGPO.pdf

在上面的例子中,-Depth 值设置为 1,因此它只显示其子文件夹(D:\Temp\LGPO、D:\Temp\GPO_Backup)及其内容。

当您将 –Depth 值设置为 2 时,输出将是。

输出

Directory: D:\Temp\GPO_backup
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       24-11-2018     11:34                {C9C3DB4C-2E51-4201-B3C3-7C0F1ACECBE9}
    Directory: D:\Temp\GPO_backup\{C9C3DB4C-2E51-4201-B3C3-7C0F1ACECBE9}
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       24-11-2018     11:34                DomainSysvol
-a----       24-11-2018     11:34           6215 Backup.xml
-a----       24-11-2018     11:34            602 Bkupinfo.xml
    Directory: D:\Temp\LGPO
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----       01-06-2017     03:22         410088 LGPO.exe
-a----       01-06-2017     02:25         638115 LGPO.pdf

正如您在上面的示例中看到的,已添加附加级别(D:\Temp\GPO_backup\{C9C3DB4C-2E51-4201-B3C3-7C0F1ACECBE9})。


相关文章