Solución:
Haría esto:
$DBNameList = @(Invoke-SQLCmd -query "select Name from sysdatabases" -Server DEVSQLSRV) | select-object -expand Name
Eso le dará una variedad de nombres. -contains
debería funcionar bien.
Lo que falta en la publicación original es algún tipo de conversión, de un objeto a una matriz.
Powershell genera el resultado de $ DBNameList porque interpreta un poco el objeto. Pero si necesita manipular este objeto e identificar un elemento específico de él, este es el método que uso:
$Itm = "DBTwo"
$DBNameList = @(Invoke-SQLCmd -query "select Name from sysdatabases" -Server DEVSQLSRV)
$NameList = @($DBNameList | select-object -ExpandProperty Name)
$Name = ($NameList.Split()).Contains($Itm)
Write-Output $Name
Cierto
He estado buscando esto por mí mismo por un tiempo y finalmente lo resolví, ¡así que espero que ayude a alguien más!
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)