Справочная информация:
Я пытаюсь отфильтровать определенную ветку GIT из моих локальных веток.Поэтому я использую git branch --all
.
Вопрос, специфичный для Powershell:
Я выполняю конвейерную фильтрацию через Where-Object
и хочу убедиться, что только один объект, а не массив возвращается изтрубопровод.
У меня есть например:
$branch = Invoke-Expression "git branch --all" | % { $_.Trim('*').Trim() | ? { $_ -match "MySpecificBranchRegex" }
Если я испорчу мой специальный фильтр, регулярное выражение $branch
может быть массивом, а не string
.
Есть лиэлегантный способ обеспечить возвращение только одной строки.Возможные решения, которые мне не нравятся:
- Вызов
Select-Object -First 1
в конце конвейера - Выполните, если '$ arr.GetType (). BaseType.Name -eq "Array"`
Thx.