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

PowerShell按组归类服务器列表输出问题求助

按分组归类服务器列表的PowerShell实现

解决方案

要实现分组名仅显示一次、下方列出对应所有服务器的效果,核心是先对CSV数据按分组字段聚合,再遍历输出,替代原代码逐行输出分组名的方式:

# 导入CSV并按Group字段分组
$groupedServers = Import-CSV c:\dev.csv | Group-Object -Property Group

# 生成目标格式的输出内容
$outputContent = foreach ($group in $groupedServers) {
    # 输出分组名称
    $group.Name
    # 输出该分组下的所有服务器名称
    $group.Group | ForEach-Object { $_.Name }
    # 可选:分组间添加空行分隔,提升可读性
    ""
}

# 将结果写入目标文件
$outputContent | Out-File c:\dev.ini -Encoding utf8

代码说明

  • Group-Object -Property Group:将CSV中的服务器数据按Group字段聚合,每个分组对象包含组名和该组下的全部服务器条目,从根源避免分组名重复。
  • 遍历分组输出:先输出分组名,再遍历组内的服务器条目提取名称,确保每组仅显示一次分组名。
  • Out-File替代重定向:可指定编码(如utf8)避免文件乱码问题,比直接用>更可靠。

若不需要分组间的空行,删除代码中的""即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 12:10:17