【发布时间】:2019-12-23 11:27:50
【问题描述】:
我正在编写一个 powershell 脚本来获取一些 IIS 站点的状态,它使用字符串作为名称可以完美地工作:
$service = (Invoke-Command -ComputerName $ComputerName {Import-Module WebAdministration; Get-WebsiteState -Name "DefaultWebsite"}).value
但是,当我尝试在名称中传递变量时,它不再起作用,而是现在返回我服务器上所有 IIS 站点的状态
$service = (Invoke-Command -ComputerName $ComputerName {Import-Module WebAdministration; Get-WebsiteState -Name "$serv"}).value
我似乎没有尝试解决此问题 - 任何建议都将不胜感激!
【问题讨论】:
-
接受的答案有效,但在 PSv3+ 中通过
$using:范围有一个更简单的解决方案 - 请参阅stackoverflow.com/a/35492616/45375
标签: powershell scope remoting