Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell 从两个不同的节点收集信息_Powershell - Fatal编程技术网

Powershell 从两个不同的节点收集信息

Powershell 从两个不同的节点收集信息,powershell,Powershell,我有xml数据(代码下面),我正在尝试将所需的数据导出到csv文件。它对同一个节点下的值非常有效,但我还需要来自bios节点的一条名为SerialNumber的信息。我不知道如何同时处理两个节点 [xml]$xdoc=获取内容c:\Temp\sinfo.xml $xdoc.sinfo.systeminfo.sys |选择对象-属性模型、制造商、标题、域|导出csv c:\temp\results.csv-NoTypeInformation HP-2 默认系统BIOS 默认系统BIOS 惠普 默

我有xml数据(代码下面),我正在尝试将所需的数据导出到csv文件。它对同一个节点下的值非常有效,但我还需要来自bios节点的一条名为SerialNumber的信息。我不知道如何同时处理两个节点

[xml]$xdoc=获取内容c:\Temp\sinfo.xml

$xdoc.sinfo.systeminfo.sys |选择对象-属性模型、制造商、标题、域|导出csv c:\temp\results.csv-NoTypeInformation


HP-2
默认系统BIOS
默认系统BIOS
惠普
默认系统BIOS
真的
10-01-2013 00:00:00
MXQ046045fdgfJ
P65
2.
7.
真的
默认系统BIOS
3.
好啊
0
HP-2
C:\Windows
C:\Windows
Y:
引导配置
C:\Windows\system32\config\systemprofile\AppData\Local\Temp
C:\Windows\system32\config\systemprofile\AppData\Local\Temp
系统外壳
系统外壳
假的
惠普
系统外壳
2.
MXedterQ046J
系统机柜0
3.
真的
真的
真的
真的
正常开机
层云
3.
-240
真的
AT/AT兼容
服务器
ten.domain.com
3.
真的
3.
假的
3.
惠普
ProLiant DL580 G7
服务器
真的
16
2.
PSF:
产品编号:595241-001
真的
-1
0
3.
0
3.
DFSDF
1.
-1
-1
LM_工作站
LM_服务器
SQLServer
新界
服务器
DFS
好啊
基于x64的PC
3.
34359738368
6.
试试这个:

$properties = @ {
Serialnumber=$xdoc.sinfo.systeminfo.bios.SerialNumber;
Model=$xdoc.sinfo.systeminfo.sys.Model;
Manufacturer=$xdoc.sinfo.systemionfo.sys.Manufacturer;
Caption=$xdoc.sinfo.systeminfo.sys.Caption;
Domain=$xdoc.sinfo.systeminfo.sys.Domain
}

$obj = new-object psobject -property $properties
这将提供一个包含您在$properties哈希表中选择的所有属性的对象

那你就可以了

$obj | Select-Object model, manufacturer, caption, domain, SerialNumber | export-csv c:\temp\results.csv -NoTypeInformation

您发布的xml无效,因此我无法测试。请更新it@Paul,请立即尝试。到目前为止,您尝试了什么,以及它以什么方式不起作用(显示您的代码)?现在您的powershell代码缺失^^我添加了一个答案,该答案应允许您解决问题。我有这个答案,并且该表显示了标题,但没有数据<代码>[xml]$xdoc=获取内容c:\Temp\sinfo.xml$properties=@{Serialnumber=$xdoc.systeminfo.bios.Serialnumber;Model=$xdoc.systeminfo.sys.Model;Manufacturer=$xdoc.systeminfo.sys.Manufacturer ComputerName=$xdoc.systeminfo.sys.caption域=$xdoc.systeminfo.sys.Domain}$obj=new object psobject-property$properties | Export Csv c:\Temp\results.Csv-Force-NoTypeInformation@Kent yea在获得正确的xml之前,我已经这样做了,我更新了它
$obj | Select-Object model, manufacturer, caption, domain, SerialNumber | export-csv c:\temp\results.csv -NoTypeInformation