Используя PowerShell, я могу получить каталоги со следующей командой:
Get-ChildItem -Path $path -Include "obj" -Recurse | `
Where-Object { $_.PSIsContainer }
Я бы предпочел написать функцию, чтобы команда была более читаемой. Например:
Get-Directories -Path "Projects" -Include "obj" -Recurse
И следующая функция выполняет именно это, за исключением обработки -Recurse
элегантно:
Function Get-Directories([string] $path, [string] $include, [boolean] $recurse)
{
if ($recurse)
{
Get-ChildItem -Path $path -Include $include -Recurse | `
Where-Object { $_.PSIsContainer }
}
else
{
Get-ChildItem -Path $path -Include $include | `
Where-Object { $_.PSIsContainer }
}
}
Как я могу удалить оператор if
из моей функции Get-Directories или это лучший способ сделать это?