Проверьте содержимое строки invoke-webrequest - PullRequest
0 голосов
/ 22 апреля 2019

У меня есть следующий фрагмент PowerShell, проверяющий файл версии на обратной стороне одного из моих приложений.

invoke-webrequest "https://mypi.mydomain/version.htm" | Select-Object -Property Content

Возвращает номер версии и имя среды:

Content             
-------             
0.3.552.2 webapilive

Попытка получить некоторый PowerShell для поиска контента по тексту webapilive или webapilive1.

Это должно использоваться в Octopus Deploy и использоваться в двух разных средах, настроенных в среде Blue Green. Мне нужно, чтобы он потерпел неудачу при попытке подключиться к Интернету поверх приложения webapilive.

Приведенный выше PowerShell возвращает содержимое со страницы, но нужно выяснить, как его проверить.

Ответы [ 2 ]

0 голосов
/ 22 апреля 2019

Два способа сделать это:

Обернуть все в скобки, как () .content

$var = (invoke-webrequest "https://mypi.mydomain/version.htm" | Select-Object -Property Content).content
if($var -like "*webapilive*")
{
 # Your code
}

Или сохраните его в var и используйте $ var.content

$var = invoke-webrequest "https://mypi.mydomain/version.htm" | Select-Object -Property Content
if($var.content -like "*webapilive*")
{
 # Your code
}
0 голосов
/ 22 апреля 2019

Вы уже выбрали конкретное свойство.Если вы просто хотите проверить содержимое без заголовков, просто используйте метод Dot для доступа к нему.

(invoke-webrequest "https://mypi.mydomain/version.htm" | Select-Object -Property Content).Content

Вы можете получить доступ к любой собственности, как это.

...