繁体   English   中英

用于启动/停止iis和mssql的powershell脚本代码

[英]powershell script code to start/stop iis and mssql

我想使用powershell脚本代码启动/停止iis和mssql意味着当我运行ps脚本时我想启动/停止iis和mssql

我在网上搜索它,我找到了一些代码,但它没有按照我的要求工作

码:

$iis = get-wmiobject Win32_Service -ComputerName "xyz" -Filter "name='IISADMIN'"
$iis.State=4

if($iis.State -ne "Running")
{
Write-Host "IIS Stop successfuly"
}

上面的代码显示输出IIS停止成功,但iis仍然运行代码执行后这是正确的代码,以阻止iis使用powershell脚本或缺少的东西请建议我为iis和mssql也

提前致谢...

您可以通过运行以下命令获取依赖于IISAdmin服务的所有服务

$query = "ASSOCIATORS OF {Win32_Service.Name='IISAdmin'} WHERE ResultRole=Dependent"
Get-WmiObject -Query $query | Select Name

您可以通过运行获取IISAdmin服务所依赖的所有服务

$query = "ASSOCIATORS OF {Win32_Service.Name='IISAdmin'} WHERE ResultRole=Antecedent"
Get-WmiObject -Query $query | Select Name

现在,一旦你知道了依赖和所需的服务,就很容易停下来。

例如, 要停止依赖于IISAdmin的所有服务

$query = "ASSOCIATORS OF {Win32_Service.Name='IISAdmin'} WHERE ResultRole=Dependent"
Get-WmiObject -Query $query
$services | Foreach-Object { "Stopping $($_.Name)";$_.StopService() }

您需要调用StopService方法并检查ReturnValue。 要获取支持的方法列表,请将$ iis发送给Get-Member

if($iis.State -eq 'Running')
{
    $rv = $iis.StopService()

    if($rv.ReturnValue -eq 0)
    {
        Write-Host "IIS Stopped successfuly"
    }
    else
    {
        Write-Host "IIS did not stop successfuly. Return value is $($rv.ReturnValue)"
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM