如何获得HP计算机上的引导顺序值
问题描述:
我想使用PowerShell读出我的引导顺序设置。我可以通过以下脚本获得这些内容:如何获得HP计算机上的引导顺序值
$bios = Get-WmiObject -Namespace root/hp/instrumentedBIOS -Class hp_biosSetting
($bios | Where-Object {$_.Name -eq 'Boot Order'}).Value.Split(',')
但是,我得到的输出不正确。我只想要这个值,但得到的值是和设置的名称。例如:
USB Floppy Disabled
我能找到的唯一的事情就是将其与,
分裂,但我只希望值作为输出。
答
正确的anwser。
$bios = Get-WmiObject -Namespace root/hp/instrumentedBIOS -Class hp_biosSetting
$bios4 =($bios | Where-Object {$_.Name -eq 'Legacy Boot Order'}).Value.Split(',')
echo $bios4
if ($bios4 -match "ATAPI CD-ROM Drive Disabeld"){
echo "ATAPI CD-ROM Drive =Disabeld"
$qu= "BEGIN INSERT into TESTAAD(Waarde_pcName,WAARDE_CD_ROM_BOOT) VALUES('$Waarde_pcName','Disabeld'); exception when dup_val_on_index THEN UPDATE TESTAAD SET Waarde_CD_ROM_BOOT = 'Disabeld' WHERE Waarde_pcName = '$Waarde_pcName'; END;"
$cmd = $con.CreateCommand()
$cmd.CommandText = $qu
$cmd.ExecuteNonQuery() |out-null
}
else{
echo " ATAPI CD-ROM Drive =Enabeld"
$qu= "BEGIN INSERT into TESTAAD(Waarde_pcName,Waarde_CD_ROM_BOOT) VALUES('$Waarde_pcName','Enabeld'); exception when dup_val_on_index THEN UPDATE TESTAAD SET Waarde_CD_ROM_BOOT = 'Enabeld' WHERE Waarde_pcName = '$Waarde_pcName'; END;"
$cmd = $con.CreateCommand()
$cmd.CommandText = $qu
$cmd.ExecuteNonQuery() |out-null
}
分裂之前你会得到什么? '($ bios | Where-Object {$ _。Name -eq'Boot Order'})。Value' – vonPryz 2014-10-06 09:08:34
我得到了所有的一行瓦伦里尔 – 2014-10-06 09:14:59
如果你不会告诉*你得到什么输出*,怎么做你期望得到帮助?你是否认为我只需连接一些HP电脑来检查它的WMI输出以及如何解析它? – vonPryz 2014-10-06 10:25:19