2016-07-26 55 views
0

如果標題有點模糊,我很抱歉。我不確定我在找什麼術語。我目前正在將XML中的信息導入到PowerShell腳本中。我嘗試了兩種方式,一種不返回任何數據,另一種返回額外字符。它需要在Windows 7和PS v2中工作。如何刪除XML屬性中的額外數據

如果我嘗試將信息放入變量這樣的變量爲空:

$applist = $UninstallXML.Uninstall.HP.App.Search 

如果我嘗試這樣我得到了正確的名單,但它帶有多餘的字符

$applist = $UninstallXML.Uninstall.HP.App | Select Search 

與...

@(Search=*Bing*) 
@(Search=*Evernote*) 
@(Search=*Energy*Star*) 
etc... 

如何刪除一切所以它只是搜索VA的列表回來梅毒?

UPDATE:

如果它可以幫助任何東西,這裏是更多的我在做什麼的完整畫面。

[xml]$UninstallXML = Get-Content "$dir\Files\Uninstall.xml" 

$applist = $UninstallXML.Uninstall.HP.App | Select Search 

ForEach ($prog in $applist) { 

    $app = Get-WmiObject -Class Win32_Product | where { $_.Name -like "$prog" } 

    If ($app.IdentifyingNumber -ne $null) { 

     $index = [array]::IndexOf($applist,$prog) 

     $name = $UninstallXML.Uninstall.HP.App[$index] | Select Name 

     $logbox.Items.Add(" Uninstalled $($name)") 
     start-process -filepath "msiexec.exe" -ArgumentList "/x $($app.IdentifyingNumber) /passive /norestart" -wait 
     " Uninstalled $($name)" >> $logfile 

    } # End If 

} # End ForEach 

使用Get-WmiObject可以行沒有找到任何東西,因爲它或者有額外的信息,並沒有匹配的程序名,或有沒有列表檢查。

謝謝。

回答

0
$applist = ($UninstallXML.Uninstall.HP.App | Select Search).search 
+0

感謝您的答覆,但似乎讓我回到沒有輸出。 – sloppyfrenzy

1

貌似我得到了它這個工作...

$ APPLIST = $ UninstallXML.Uninstall.HP.App |選擇-expandproperty搜索