如果標題有點模糊,我很抱歉。我不確定我在找什麼術語。我目前正在將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可以行沒有找到任何東西,因爲它或者有額外的信息,並沒有匹配的程序名,或有沒有列表檢查。
謝謝。
感謝您的答覆,但似乎讓我回到沒有輸出。 – sloppyfrenzy