如何在PowerShell中选择DTSX文件中的特定字段

时间:2013-08-05 09:28:18

标签: powershell ssis

如何使用powershell在DTSX文件中选择特定字段?这样我就可以改变它的价值。

以下是以下示例:

<?xml version="1.0" encoding="UTF-8"?>
<DTS:Executable xmlns:DTS="www.microsoft.com/SqlServer/Dts" DTS:ExecutableType="SSIS.Package.2">
    ..
   <DTS:Configuration>
      ..
      <DTS:Property DTS:Name="ConfigurationType">1</DTS:Property>
      <DTS:Property DTS:Name="ConfigurationString">change me</DTS:Property>
      ..
   </DTS:Configuration>
   ..
</DTS:Executable>

我如何访问该字段?我一直试图通过这样做来打印:

$xml.Executable.Configuration.ConfigurationString

$xml.Executable.Configuration.Property.ConfigurationString

但它没有打印任何东西。

提前致谢并致以最诚挚的问候。

1 个答案:

答案 0 :(得分:2)

尝试这种方式:

[xml]$xml = gc c:\myxml.xml

$xml.Executable.Configuration.Property | ? { $_.'#text' -eq 'change me'} | % { $_.'#text' = "Changed" }

$xml.Save( "c:\mynewxml.xml" )

评论后编辑:

$xml.Executable.Configuration.Property | ? { $_.name -eq 'configurationstring'} | % { $_.'#text' = "Changed" }