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

如何将文件/手动添加的值存入$Machines变量并保留MachineName字段

优化后的PowerShell实现

核心思路

将从文件读取的字符串数组,转换成包含MachineName属性的自定义对象数组,和从数据库拉取的$Machines结构保持一致,确保后续依赖$Machines.MachineName的代码无需修改。

完整代码

# 从文件读取机器列表并转换为目标结构
$sourceFile = "C:\machines.txt"
$Machines = Get-Content -Path $sourceFile | ForEach-Object {
    [PSCustomObject]@{
        MachineName = $_  # $_ 指代当前循环的单条机器名
    }
}

# 验证结构(可选操作)
$Machines

# 原有业务代码无需修改,直接复用
Test-NetConnection -ComputerName $Machines.MachineName

关键修正说明

  • 原代码错误地将整个机器数组赋值给每个对象的MachineName字段,改用$_可获取当前遍历的单条机器名,生成符合要求的结构。
  • 如果需要手动添加机器,可直接构造同结构的对象数组:
    # 手动添加机器示例
    $Machines = @(
        [PSCustomObject]@{ MachineName = "pc4" },
        [PSCustomObject]@{ MachineName = "pc5" }
    )
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 11:55:23