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

PowerShell脚本保存XML文件时提示路径格式不支持的问题求助

PowerShell脚本保存XML文件时提示路径格式不支持的问题求助

我有一个XML文件内容如下:

<?xml version="1.0" encoding="utf-8"?>
<Topology>
<SERVER1 desc="name of server1"></ICONIS_ONLINE_SERVER1>
<SERVER2 desc="name of server2">PROJECT</SSCOFFLINE_SERVER1>
</Topology>

我写了一段PowerShell脚本,用来读取、修改并保存这个XML文件:

#This will replace the values on the topology file and saves it
$xmldata =[XML](Get-Content \\10.10.115.16\c$\Deployment\Config.xml)
$xmldata. Topology.SERVER1.InnerText = 'Mydomain'
$xmldata.Save((Resolve-Path \\10.10.115.16\c$\Deployment\Config.xml).Path

这段脚本可以完成修改操作,但保存的时候报错了,错误信息是:

Exception calling "Save" with "1" argument(s): "The given path's format is not supported."

有没有大佬能帮忙解决这个问题呀?


解决方案

出现这个错误主要有几个可能的原因,咱们逐个排查解决:

  1. 修复脚本语法错误
    你的脚本有两处明显的语法问题:

    • $xmldata. Topology里多了一个空格,应该写成$xmldata.Topology,否则PowerShell无法正确识别Topology属性;
    • 最后一行Save方法的括号没有配对,(Resolve-Path ...).Path前面的左括号缺少对应的右括号。
      修正后的脚本片段:
    $xmldata.Topology.SERVER1.InnerText = 'Mydomain'
    $xmldata.Save((Resolve-Path \\10.10.115.16\c$\Deployment\Config.xml).Path)
    
  2. 解决UNC路径兼容性问题
    .NET的XmlDocument.Save()方法对UNC路径的支持有时候会有异常,你可以换一种方式获取文件路径,比如用Get-Item获取文件对象后传递FullName属性:

    $xmlPath = "\\10.10.115.16\c$\Deployment\Config.xml"
    $xmldata = [XML](Get-Content $xmlPath)
    $xmldata.Topology.SERVER1.InnerText = 'Mydomain'
    # 通过Get-Item获取标准的完整路径
    $fileInfo = Get-Item $xmlPath
    $xmldata.Save($fileInfo.FullName)
    

    要是还是不行,还可以先把XML文件复制到本地临时目录,修改后再复制回远程路径,彻底避开UNC路径的问题:

    $remotePath = "\\10.10.115.16\c$\Deployment\Config.xml"
    $localTempPath = "$env:TEMP\Config.xml"
    # 复制远程文件到本地临时目录
    Copy-Item $remotePath $localTempPath
    # 读取并修改本地文件
    $xmldata = [XML](Get-Content $localTempPath)
    $xmldata.Topology.SERVER1.InnerText = 'Mydomain'
    $xmldata.Save($localTempPath)
    # 把修改后的文件复制回远程路径
    Copy-Item $localTempPath $remotePath -Force
    
  3. 检查权限问题
    别忘了确认运行脚本的账号有没有对\\10.10.115.16\c$\Deployment目录的读写权限,如果权限不足,也可能触发类似的路径格式错误提示,可以先手动尝试在该目录下创建或修改文件验证权限。


备注:内容来源于stack exchange,提问作者Mohan Reddy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.22 13:32:59