How do I get only directories using Get-ChildItem?

后端 未结 15 1378
北海茫月
北海茫月 2020-11-29 16:30

I\'m using PowerShell 2.0 and I want to pipe out all the subdirectories of a certain path. The following command outputs all files and directories, but I can\'t figure out h

15条回答
  •  遥遥无期
    2020-11-29 17:05

    Use

    Get-ChildItem -dir #lists only directories
    Get-ChildItem -file #lists only files
    

    If you prefer aliases, use

    ls -dir #lists only directories
    ls -file #lists only files
    

    or

    dir -dir #lists only directories
    dir -file #lists only files
    

    To recurse subdirectories as well, add -r option.

    ls -dir -r #lists only directories recursively
    ls -file -r #lists only files recursively 
    

    Tested on PowerShell 4.0, PowerShell 5.0 (Windows 10), PowerShell Core 6.0 (Windows 10, Mac, and Linux), and PowerShell 7.0 (Windows 10, Mac, and Linux).

    Note: On PowerShell Core, symlinks are not followed when you specify the -r switch. To follow symlinks, specify the -FollowSymlink switch with -r.

    Note 2: PowerShell is now cross-platform, since version 6.0. The cross-platform version was originally called PowerShell Core, but the the word "Core" has been dropped since PowerShell 7.0+.

    Get-ChildItem documentation: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-childitem

提交回复
热议问题