如何在Powershell中使用Get Service命令检查Windows服务状态

服务是操作系统中最重要的部分之一。列出这些服务有不同的工具和命令。Powershell提供 Get-Service commandlet,以便列出这些服务并根据提供的筛选器对其进行筛选。

【预售】Service! Some People Just Don't Get It!: A Simple
美国库房发货,通常付款后5-8周到货! | 月销量0件
券后99-5=94元
原价¥99

淘口令:

¥BRzVX79YW4x¥
 

列出所有服务

我们将从一个简单的用例开始,在这个用例中,我们将列出所有服务,而不向 Get-Service 命令。这将列出当前处于运行或停止状态的现有服务。

PS> Get-Service
List All Services 
列出所有服务

从截图中我们可以看到,默认情况下,服务是按名称订购的。默认情况下,将提供有关列出的服务的以下信息。

  • Status 如果服务是 Running Stopped
  • Name 将显示命令使用的服务的真实名称和简短名称。
  • Display Name 将显示更人性化的扩展和信息服务名称。

列出远程计算机或系统上的所有服务

由于微软提供了远程访问和管理的远程系统与powreshell我们可以使用 Get-Service 命令以列出远程系统上的服务。我们将提供 -computername 远程系统的。这可以是可以解析的DNS名称,也可以是我们可以访问的IP地址。

PS > Get-Service -computername DESKTOP-HQVAMA3
List All Service On Remote Computer or System
列出远程计算机或系统上的所有服务

列出具有指定名称的服务

Windows操作系统提供了大量的服务,可以很容易地填满终端。或者我们可能需要通过提供其名称的某个部分的名称来列出特定的服务名称。我们只提供后面的名字 Get-Service 命令。我们也可以使用 * glob,其中只指定服务名称的某些部分。在本例中,我们将尝试列出 WinDefend 提供服务 WinDef* 作为服务名称。

PS > Get-Service WinDef*
List Services with Specified Name
列出具有指定名称的服务

仅列出当前运行的服务

Windows中有两种主要的服务状态。 Running Stopped . 我们可能需要根据其状态列出服务。我们可以使用对象参数 Status 如下面所示,只列出正在运行的服务。

PS> Get-Service | Where-Object {$_.Status -eq "Running"}
List Only Currently Running Services
仅列出当前运行的服务

列出具有从属服务的服务

服务很重要,可能相互联系和依赖。在停止它们之前,我们可能需要列出给定服务的依赖服务。我们可以用 -RequiredServices 用于列出服务依赖项的选项。

PS> Get-Service "WinDefend" -RequiredServices
List Service with Dependent Service
列出具有从属服务的服务

按状态排序的列表(已停止/正在运行)

我们可能需要根据它们的运行和停止状态检查服务列表。我们可以使用 Sort-Object 就像下面一样。

PS> Get-Service | Sort-Object status
List Sorted By Status (Stopped/Running)
按状态排序的列表(已停止/正在运行)

将服务列表写入文件

我们以后可能需要调查服务列表,或者只想将它们保存到一个文件中。我们可以用 Out-File 命令,该命令将服务列表写入所需的文件。在本例中,我们将写入一个名为 Services.txt

PS> Get-Service | Out-File "C:Usersİsmail BaydanDesktopServices.txt"

相关文章: 如何使用Psexec工具运行命令并获取Shell远程Windows系统?

© 版权声明
THE END
喜欢就支持一下吧,技术咨询可以联系QQ407933975
点赞0
分享