【问题标题】:Need to update specific XML node value using powershell需要使用 powershell 更新特定的 XML 节点值
【发布时间】:2019-08-21 02:20:38
【问题描述】:

我想更新特定节点的值并以相同的名称保存文件。我想更新供应商名称值:

XML

<?xml version="1.0" encoding="UTF-8"?>
<KioskSettings
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <Settings>
        <Name>Store ID</Name>
        <Value>DEVQATEST</Value>
    </Settings>
    <Settings>
        <Name>Store Address</Name>
        <Value>ramapuram</Value>
    </Settings>
    <Settings>
        <Name>City Name</Name>
        <Value>chennai</Value>
    </Settings>
    <Settings>
        <Name>State</Name>
        <Value>Oklahoma</Value>
    </Settings>
    <Settings>
        <Name>Zip Code</Name>
        <Value>464</Value>
    </Settings>
    <Settings>
        <Name>Store Prefix</Name>
        <Value>DEV</Value>
    </Settings>
    <Settings>
        <Name>Vendor Name</Name>
        <Value>Bed Bath And Beyond</Value>
</KioskSettings>

Powershell

$xmlfilepath = 'C:\Kiosk\Settings\ApplicationSettings.xml'
$content =[xml] (get-content $xmlfilepath)
$value=$content.KioskSettings.Settings[6].Value='AFFES'
$content.Save([console]::out)

【问题讨论】:

  • edit您的问题包含格式正确的 XML,方法是将其包含在 3 个前导和 3 个尾随反引号中。

标签: xml powershell


【解决方案1】:

显然,我发现我做错了什么!我要求脚本保存文档,但从未告诉过保存位置。

我的错..

这对我有用:)

[xml] $content = get-content 'C:\test\test\Test.xml';$value=$content.KioskSettings.Settings[6].Value='AFFES';$content.Save('C:\test\test\TestSettings.xml')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-26
    • 2021-08-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多