PowerShell читает отфильтрованный список таблиц SQL Server - PullRequest
0 голосов
/ 16 мая 2018

Я читаю список таблиц SQL Server в массив PowerShell, который затем перебираю.Все интересующие меня таблицы имеют имя, например% PickList%.Как я могу отфильтровать эту строку?

Вот что у меня есть.Фильтрация для точного соответствия имени таблицы работает хорошо, но как я могу расширить поиск, чтобы получить все такие таблицы?

clear-host
Set-location SQLserver:\sql\...-CONRAD...\default\databases\PT2\tables

$a = Get-ChildItem | Where {$_.Name -eq "santitzie_PickList_Ctry_FirstName"} # ok

# Get-ChildItem | Where {$_.Schema -eq "pt2"} # ok
# Get-ChildItem | Where {$_.Name -eq "santitzie_PickList_Ctry_FirstName"}  # ok
# Get-ChildItem | Where {$_.Name -like "%PickList%"} # no
# Get-ChildItem | Where {$_.Name -eq "%Pick%"} # no

foreach ($item in $a) {Write-Host $item} # ok

1 Ответ

0 голосов
/ 16 мая 2018

-like *PickList* будет работать, или вы можете вернуться к обычным методам сравнения строк .NET и сделать $name.Contains('PickList').

Contains чувствителен к регистру, тогда как -like - нет.

Для дальнейшего использования такие темы легко доступны для поиска .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...