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

如何编写PowerShell脚本根据CSV数据修改XML文件中对应账户的密码

PowerShell批量更新XML账号密码实现方案

实现逻辑

  • 导入分号分隔的CSV账号密码映射表
  • 解析XML文件为可操作的DOM对象
  • 遍历CSV记录匹配对应XML账号节点,替换密码值
  • 保存修改后的XML文件

完整可运行脚本

# 配置文件路径,替换为你本地的实际路径
$csvFilePath = "C:\path\to\your\accounts.csv"
$xmlFilePath = "C:\path\to\your\config.xml"

# 导入CSV,指定分隔符为分号
$accountMaps = Import-Csv -Path $csvFilePath -Delimiter ';'

# 加载并解析XML文件
[xml]$xmlConfig = Get-Content -Path $xmlFilePath -Encoding UTF8

# 遍历所有CSV账号记录
foreach ($item in $accountMaps) {
    # 查找Login值匹配当前CSV账号的Account节点
    $matchedAccount = $xmlConfig.SelectSingleNode("//Account[Login='$($item.AccountName)']")
    if ($matchedAccount) {
        # 替换Password节点内容
        $matchedAccount.Password = $item.Password
        Write-Host "成功更新账号:$($item.AccountName)"
    }
    else {
        Write-Warning "未找到匹配账号,跳过:$($item.AccountName)"
    }
}

# 保存修改后的XML
$xmlConfig.Save($xmlFilePath)

注意事项

  • 测试时可将最后的保存路径改为新的文件名,避免覆盖原文件导致数据丢失
  • 若XML使用非UTF8编码,可调整Get-Content的-Encoding参数适配
  • 若账号名包含单引号等特殊字符,需先对XPath查询值做转义处理

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 05:42:02