Получение всех виртуальных каталогов для веб-сайта IIS6 с использованием WMI

Я хочу перечислить все виртуальные каталоги, которые принадлежат веб-сайту с определенным именем, используя WMI и PowerShell.

Я знаю, что могу перечислить все виртуальные каталоги на сервере, используя приведенный ниже код, но как я могу отфильтровать только те, которые принадлежат конкретному сайту?

Get-WmiObject IIsWebVirtualDir -namespace "ROOT\MicrosoftIISv2"

1 ответ

Решение

Что ж, если взять простейший подход и выполнить фильтрацию на основе свойств, возвращаемых из данного примера, я бы, вероятно, решил использовать часть идентификатора сайта в свойстве Name:

Get-WmiObject IIsWebVirtualDir -namespace "ROOT\MicrosoftIISv2" | `
     Where-Object { $_.name -like "W3SVC/1/*" }

В приведенном выше примере показаны только виртуальные каталоги на веб-сайте по умолчанию, настроенном для первой установки IIS. Это всегда имеет идентификатор 1.

Примечание: обратный символ `после строки является символом продолжения строки (на самом деле это символ перехода, но я избегаю EOL), как _ в Visual Basic. Я использую это, чтобы уродливые горизонтальные полосы прокрутки не отображались в блоке кода выше.

-Oisin

Другие вопросы по тегам