簡體   English   中英

Powershell:從get-wmiobject win32_product過濾不需要的值

[英]Powershell: Filtering unwanted values from get-wmiobject win32_product

我正在嘗試將計算機上已安裝的應用程序列表放到列表框中,到目前為止,我有以下內容:

function programsinstalled_current
{
$prog = get-wmiobject win32_product -computer summer -Property Name | select Name
foreach($program in $prog)
{
[Void]$program_list_current.items.add($program)
}
}

並在列表框中返回:

在此處輸入圖片說明

我的問題是如何消除每個程序名稱開頭的不必要的'@ {name ='和每個名稱結尾的'}'?

我已經嘗試將下面的代碼與將機器的AD組放入Listbox一起使用,並且工作正常,但是相同的語法對get-wmiobject win32_product

function fill_current_list
{
$processnames_t = (Get-ADComputer -Identity $current_hostname.text -Property MemberOf).MemberOf 
foreach ($processname in $processnames_t)
{
[void]$AD_list_current.Items.Add($processname)
} 

如果可能的話,我寧願不使用-replace

謝謝

嘗試:

[Void]$program_list_current.items.add($program.name)

您還可以添加所有產品名稱而無需在其上循環:

$prog = gwmi win32_product -computer summer -Property Name | select -expand Name
$program_list_current.items.AddRange($prog)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM