我是第一次在PowerShell中使用XML文件。我有一个简单的脚本失败。我需要使用web-request获取XML内容,然后将其保存到文件夹中以便以后处理。
以下是代码:
$IP = 8.8.8.8
$ipgeo = new-object System.Xml.XmlDocument
$ipgeo = ([xml](Invoke-WebRequest "http://freegeoip.net/xml/$IP").Content).Response
$ipgeo.save("c:\ipgeo\IPXML\$IP.xml")
当我运行它时,我收到以下错误:
Method invocation failed because [System.Xml.XmlElement] does not contain a method named 'save'. At line:3 char:1
+ $ipgeo.save("c:\ipgeo\IPXML\$IP.xml")
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo: InvalidOperation: (save:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound
我做错了什么?
答案 0 :(得分:3)
您可以通过引用所需根节点的OuterXml
属性来保存Xml文档的子集:
# instead of $ipgeo.Save("c:\ipgeo\IPXML\$IP.xml")
$ipgeo.OuterXml |Out-File "c:\ipgeo\IPXML\$IP.xml"