roc*_*cku 5 xml powershell serialization
有没有办法Import-Clixml
在字符串或XML对象上运行cmdlet?
它需要一个文件路径作为输入来生成PowerShell对象,并且无法从XML对象获取输入.由于存在将PowerShell对象序列化为XML对象的ConvertTo-Xml cmdlet,为什么没有来自XML的转换,这会反过来呢?
我知道System.Xml.Serialization.XmlSerializer
可以做到这一点的班级.但是,我想坚持使用cmdlet来做到这一点.
有没有办法用cmdlet(可能只是Import-Clixml
)执行此操作,而无需创建临时文件?
明显的尝试是只给出变量的路径:
PS Home:\> $xmldata = gci | ConvertTo-Xml
PS Home:\> Import-Clixml Variable:\xmldata
Import-Clixml : Cannot open file because the current provider (Microsoft.PowerShell.Core\Variable) cannot open a file.
At line:1 char:14
+ Import-Clixml <<<< Variable:\xmldata
+ CategoryInfo : InvalidArgument: (:) [Import-Clixml], PSInvalidOperationException
+ FullyQualifiedErrorId : ReadWriteFileNotFileSystemProvider,Microsoft.PowerShell.Commands.ImportClixmlCommand
Run Code Online (Sandbox Code Playgroud)
...遗憾的是失败了。所以我认为没有真正的方法可以在没有临时文件的情况下工作。
主要目的ConvertTo-XML
是允许在将对象转换为 XML 后在 PowerShell 中进一步处理 XML。那么问题是为什么不能直接对对象进行更改,而不是操作 XML 并将其转换回来?
否则,您仍然可以将临时文件内容包装到函数中。
归档时间: |
|
查看次数: |
4106 次 |
最近记录: |