You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell操作Excel新增Server列并按服务器数组填充Get-Service对应行

PowerShell 按服务器批量导出服务列表到Excel实现方案

首先直接给出可运行的完整代码:

# 定义要查询的服务器列表,修正原代码中错写为服务名的问题
$servers = @('Server1', 'Server2')
# 初始化空数组存储所有服务器的服务结果
$exportData = @()

foreach ($server in $servers) {
    # 逐台获取服务列表:本地测试直接用Get-Service,查询远程服务器改为 Get-Service -ComputerName $server
    $currentServerServices = Get-Service
    # 给当前服务器的所有服务记录追加Server列,值为当前服务器名
    $processedData = $currentServerServices | Select-Object `
        @{Name = 'Server'; Expression = { $server }}, Status, Name
    # 追加到总导出数据集
    $exportData += $processedData
}

# 一次性导出所有数据到Excel,-AutoSize参数可自动适配列宽
$exportData | Export-Excel -Path F:\file.xlsx -AutoSize

核心逻辑说明

  • 不需要嵌套循环逐行给服务加服务器名,直接使用Select-Object的计算属性,就能给当前循环批次的所有服务记录统一追加Server字段
  • 所有服务器的处理结果都收集到同一个数组中,最后一次性调用Export-Excel导出即可,不需要多次写入文件

注意:运行前需确保已安装ImportExcel模块,未安装可执行Install-Module -Name ImportExcel -Scope CurrentUser完成安装。
如果需要查询远程服务器的真实服务,需确保当前执行账号拥有对应服务器的WMI访问权限。

内容的提问来源于stack exchange,提问作者Sam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.21 15:06:03