Powershell 将简单哈希表转换为HTML

Powershell 将简单哈希表转换为HTML,powershell,Powershell,我正在尝试编写一个html页面,其中包含当前正在运行的进程名。 我试过这个: $htmlFile="c:\HTMLFILE.HTML" $HashTBL=@{label="PROCESS NAMES";Expression={$_.name}} $HtmData=Get-Process |select -Verbose $HashTBL $HtmData | ConvertTo-Html -Title "Running processes" |Out-File $htmlFile

我正在尝试编写一个html页面,其中包含当前正在运行的进程名。
我试过这个:

 $htmlFile="c:\HTMLFILE.HTML"

 $HashTBL=@{label="PROCESS NAMES";Expression={$_.name}}

 $HtmData=Get-Process |select -Verbose $HashTBL
 $HtmData | ConvertTo-Html -Title "Running processes" |Out-File $htmlFile
但我得到了这一页: 正如您所看到的,列名丢失并显示为通配符

*
AcroRd32
AcroRd32
ApMsgFwd
ApntEx
点
armsvc
音频DG
CCleaner64
铬
铬
铬
铬
铬
铬
铬
铬
铬
铬
如果我选择了多个工作正常的属性:

 $htmlFile="c:\HTMLFILE.HTML"

 $HashTBL=@{label="PROCESS NAMES";Expression={$_.name}}   

 $HtmData=Get-Process |select -Verbose $HashTBL,id
 $HtmData | ConvertTo-Html -Title "Running processes" |Out-File $htmlFile
生成正确的列标题(仅添加ID属性)

但仍要使用单个属性作为哈希表

您可以指定要转换为html的属性,如下所示:

$htmlFile="c:\HTMLFILE.HTML"
$HashTBL=@{label="PROCESS NAMES";Expression={$_.name}}
$HtmData=Get-Process |select -Verbose $HashTBL
$HtmData | ConvertTo-Html -Title "Running processes" -Property 'PROCESS NAMES' |Out-File $htmlFile

为什么不在“选择对象”中设置属性的格式?如果您只想重新标记列,那么可以使用哈希表在Select对象中执行此操作

$htmlFile="c:\HTMLFILE.HTML"
get-process | Select-Object @{n='PROCESS NAMES';e={$_.Name}} | Convertto-html -Title "Running processes" | Out-File $htmlfile

看起来像是
converttohtml