Используя 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 или это лучший способ сделать это?