警告:每个使用一行!
我在IIS 6中使用了这些命令,它们工作得很好。
开始:
(get-wmiobject -namespace 'root\MicrosoftIISv2' -computername 'REMOTE_SERVER' -class 'IIsApplicationPool' | where-object {$_.Name -eq 'W3SVC/AppPools/MY_FANCY_APPPOOL'}).InvokeMethod('Stop', $null)"
- 和 -
停止:
(get-wmiobject -namespace 'root\MicrosoftIISv2' -computername 'REMOTE_SERVER' -class 'IIsApplicationPool' | where-object {$_.Name -eq 'W3SVC/AppPools/MY_FANCY_APPPOOL'}).InvokeMethod('Start', $null)
我正在寻找IIS 8中的替代方案。我需要几个单行,并且必须是Powershell命令。我通过TFS中的InvokePowerShellCommand
活动调用它们。那里有谁可以帮助我吗?
答案 0 :(得分:27)
您可以执行以下操作来启动应用程序池:
Invoke-Command -ComputerName "REMOTE_SERVER" -ScriptBlock { Start-WebAppPool -Name "MY_FANCY_APPPOOL" }
您可以执行以下操作来停止应用程序池:
Invoke-Command -ComputerName "REMOTE_SERVER" -ScriptBlock { Stop-WebAppPool -Name "MY_FANCY_APPPOOL" }
答案 1 :(得分:3)
首先,有时您需要添加显式等待,以便应用程序池响应控制消息:
Invoke-Command -ComputerName "$REMOTE_SERVER" -ScriptBlock { Import-Module WebAdministration; Start-Sleep -s 10; Start-WebAppPool -Name "$APP_POOL_NAME" }
停下来:
Invoke-Command -ComputerName "$REMOTE_SERVER" -ScriptBlock { Import-Module WebAdministration; Stop-WebAppPool -Name "$APP_POOL_NAME" }