当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

作者:精品下载站 日期:2024-12-14 05:02:32 浏览:16 分类:玩电脑

PowerShell 停止服务 |了解 PowerShell 停止服务的示例


[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

PowerShell停止服务简介

PowerShell 中的 Stop-Service cmdlet 用于停止本地计算机或远程计算机上正在运行的服务。您可以一起停止一项或多项服务。例如,可以通过名称、显示名称或输入对象来停止服务。

语法:

Stop-Service 命令使用以下语法。

Stop-Service
[-Force]
[-NoWait]
[-Name] <String[]>
[-InputObject] <ServiceController[]>
[-DisplayName] <String[]>
[-PassThru]
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]

参数

以下是PowerShell Stop-Service的以下参数

1.-姓名

该参数用于服务名称或别名。您可以使用通配符 (*)。如果需要停止多个服务,可以用逗号(,)分隔。例如,Print Spooler 服务具有别名 Spooler,就像所有其他服务都有自己的别名一样。

2. -显示名称

使用此参数时,您需要提供服务的显示名称。它是一个字符串数据类型。您可以提供多个显示名称,并用逗号 (,) 分隔。允许使用通配符 (*)。 例如,“Windows Management Instrument”是 winmgmt 服务别名的显示名称。

3.--输入对象

您可以将多个服务作为变量提供给输入对象参数,以停止本地和远程计算机上的服务。

4. -包括

此参数指定停止任何服务时要包含的服务名称。此参数的值限定名称参数。您可以使用通配符 (*)。例如,当您指定 S* 时,它将停止所有以 S 开头的服务。

5. -排除

此参数指定停止任何服务时要排除的服务名称。此参数的值限定 Name 参数。您可以使用通配符 (*)。例如,当您指定S*时,它将停止其余服务,不包括以S开头的服务。

6. - 通道

默认情况下,Stop-Service 不会在 PowerShell 控制台中显示输出。使用此参数时,输出将显示在 PowerShell 控制台中。

7. -假设

使用此参数时,它显示停止服务运行时要执行的操作,而不运行实际命令。

8. -确认

此参数将在停止服务之前提示用户同意。以下选项可与 -Confirm 参数一起使用。

[Y] 是 [A] 全部是 [N] 否 [L] 全部否 [S] 暂停 [?] 帮助(默认为“Y”):

Y(是) - 它将停止单个服务,如果有多个服务,则会针对下一个服务再次运行检查。

A(全部同意) - 它将停止 Stop-Service 命令中提供的所有服务。

N(否):不会停止单个服务,如果有多个服务,则会针对下一个服务再次运行检查。

L(全部拒绝):不会停止 Stop-Service 命令中提供的所有服务。

S(挂起):它将跳过服务停止状态,这意味着它将让服务保持当前状态。

9.-力量

使用 Force 参数将停止服务,即使该服务有正在运行的依赖服务。因此,它首先停止依赖的服务,然后停止服务本身。

10.-不等

当您指定 -Nowait 参数时,PowerShell 控制台不会等待服务停止,而是执行下一个代码。

11. -通用参数

停止服务支持以下常用参数。

-详细、-调试、-ErrorAction、-ErrorVariable、-WarningVariable、-WarningAction、-OutBuffer、-OutVariable。

PowerShell 停止服务的示例

下面提到了不同的例子:

1. 停止服务 cmdlet

当你刚刚编写Stop-Service时,它会等待输入对象,如下所示。输入对象可以是服务别名、显示名称或像变量一样的输入对象。

Stop-Service

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

2. 使用 -Name 参数停止服务

您可以在 -Name 参数后提供服务名称(别名)。 Stop-Service cmdlet 将 -Name 作为默认参数。停止服务时,您将不会在控制台中得到任何输出。您需要使用 Get-Service 命令来检索服务的状态。您还可以使用 -PassThru 参数,稍后将在后续示例中对此进行解释。

Stop-Service -Name Spooler
Get-Service Spooler

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

您可以通过用逗号 (,) 分隔来停止多个服务。例如,

Stop-Service -Name Spooler, Winmgmt, PlugPlay
Get-Service Spooler, Winmgmt, PlugPlay

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

您还可以使用通配符 (*)。

例如,

Stop-Service -Name Spooler, "Winmg*", "*Plug*" -PassThru

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

3. 使用 -Passthru 参数停止服务

在上面的示例中,我们看到我们需要使用 Get-Service cmdlet 来获取服务状态。您还可以使用 -Passthru 参数,该参数在控制台本身中显示输出。

Stop-Service -Name Spooler, Winmgmt, PlugPlay -PassThru

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

4. 使用 -DisplayName 参数停止服务

您可以提供显示名称作为停止服务的输入以停止服务。

例如,

Stop-Service -DisplayName "Plug*","Print Spooler" -PassThru

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

5. 使用 -InputObject 参数停止服务

在这里,我们将在变量中存储一些服务别名并将其传递给 InputObject 参数。

$services = "Spooler","Plugplay","Winmgmt"
Stop-Service -InputObject $services -PassThru

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

6. 使用 -include 参数停止服务

在下面给定的变量中,我们只需要停止“Print Spooler”服务。 因此,当我们使用 -Ininclude 参数时,它将仅包含 Spooler 服务。

$services = "Spooler","Plugplay","Winmgmt"
Stop-Service $services -Include "Spoo*" -PassThru

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

7. 使用 -Exclude 参数停止服务

下面给出的变量将排除 Spooler 服务,因此其他两个服务将自动重新启动。

$services = "Spooler","Plugplay","Winmgmt"
Stop-Service $services -Exclude "Spoo*" -PassThru

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

8. 使用 -WhatIf 参数停止服务

Whatif 参数将预测命令执行,而无需实际执行命令。下面显示了一个示例。

Stop-Service -Name Spooler -WhatIf

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

9. 使用 -Confirm 参数停止服务

您可以将 -Confirm 参数与布尔值($true 或 $false)结合使用。当指定$true时,服务不会停止,但会提示用户同意,当指定$false时,服务将停止。

Stop-Service -Name Spooler -Confirm:$false -PassThru

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

Stop-Service -Name Spooler -Confirm:$true -PassThru

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

10. 使用 -Force 参数停止服务

很少有服务具有依赖服务,并且在不停止依赖服务的情况下无法直接停止。因此 -Force 参数会停止该服务及其依赖的服务。例如,Winmgmt 服务。

Stop-Service Winmgmt -Force -PassThru

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

11. 使用 -NoWait 参数停止服务

有些服务需要一段时间才能停止,并且在此之前执行会停止。例如,-NoWait 参数在后台停止,并执行下一个代码。

例如,

Stop-Service Winmgmt -NoWait -PassThru

输出:

[玩转系统] PowerShell 停止服务 |了解 PowerShell 停止服务的示例

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯