如何将 Windows 服务列表及其状态提取到文本文件中?

Ale*_*gas 18 windows services export

我想获得您在运行时看到的屏幕的文本转储services.msc(“说明”列除外)。这样我就可以在安装不同的软件后运行差异,将服务添加到这个屏幕。

这可能吗?

如果有帮助,我可以访问 Powershell,但不知道如何从中检索此类信息。

Meh*_*lar 19

在“服务”窗口中,Action > Export...菜单可以为您提供 .txt 或 .csv 文件形式的列表。它也为您提供了描述列,但您可以使用 Excel 等程序轻松删除它。

您也可以从 Powershell 执行此操作。

Get-Service | Export-Csv -path "C:\services.csv"
Run Code Online (Sandbox Code Playgroud)

此外,您可以过滤列表。例如,您可以通过执行以下命令来仅获取已启动的服务:

Get-Service | where {$_.Status -eq "Running"} | Export-Csv -path "C:\services.csv"
Run Code Online (Sandbox Code Playgroud)

  • 如果使用 .csv 导出,请确保使用“Unicode 文本(制表符分隔)(*.txt)”。如果使用逗号分隔,说明字段中的逗号可能会溢出并弄乱输出。 (2认同)
  • 在这里找到了一种导出和导入配置的方法:http://www.winhelponline.com/blog/backup-windows-services-configuration/ (2认同)

War*_* P 12

在不使用 powershell 的情况下,这会列出正在运行的服务:

 sc query > running_services.txt
Run Code Online (Sandbox Code Playgroud)

这列出了所有服务,无论是否运行:

 sc query state= all > all_services.txt
Run Code Online (Sandbox Code Playgroud)

  • PowerShell 在这种情况下效果更好,因为它的输出可以轻松定制。但很高兴知道还有其他选择,谢谢! (2认同)

Emm*_*urg 5

您还可以使用net start获取正在运行的服务列表。


Xan*_*vis 5

我还需要完整路径,所以我最终使用

Get-WmiObject win32_service | select Name, DisplayName, State, PathName | Export-Csv -path "C:\services.csv"
Run Code Online (Sandbox Code Playgroud)