Get-process命令在监视远程计算机上的进程时给出负值

Abh*_*hra 6 powershell

我正在我的系统上执行此命令

get-process $Processname -computername $Computername 
Run Code Online (Sandbox Code Playgroud)

但在输出中它给我负的工作集和分页内存大小值输出:

Name        ID         VM   PeakVM          WS         PeakWS Thread     Handle
----        --         --   ------          --         ------ ------     ------
FusionA  10724      -1282     -988       -1777          -1697    232       2085
FusionA  10724      -1281     -988       -1746          -1697    232       2091
FusionA  10724      -1280     -988       -1713          -1697    232       2099
FusionA  10724      -1279     -988       -1707          -1697    232       2108
FusionA  10724      -1277     -988       -1702          -1697    232       2118
Run Code Online (Sandbox Code Playgroud)

Plz让我知道如何解决这个问题..对于那些不明白我的意思的人,不需要爆发plz,因为我正在解释它更多..最初我做的是这样的事情:

if($env:Processor_Architecture -eq "x86")
{
write "`nrunning on 32bit"
$a = @{Expression={$_.Name.SubString(0,7)};Label="Name";width=7}, `
@{Expression={$_.ID};Label="ID";width=6}, `
@{Expression={$_.PagedMemorySize/1024};Label="VirtualMemory";width=10},
@{Expression={$_.PeakPagedMemorySize/1024};Label="PeakVirtualMemory";width=8},
@{Expression={$_.WS/1024};Label="WorkingSet";width=11},
@{Expression={$_.PeakWorkingSet/1024};Label="PeakWorkingSet";width=14},
@{Expression={$_.threads.count};Label="Threads";width=6},
@{Expression={$_.Handles};Label="Handles";width=10}

}
else
{
write "`nrunning on 64bit"
$a = @{Expression={$_.Name.SubString(0,7)};Label="Name";width=7}, `
@{Expression={$_.ID};Label="ID";width=6}, `
@{Expression={$_.PagedMemorySize64/1024};Label="VirtualMemory";width=10},
@{Expression={$_.PeakPagedMemorySize64/1024};Label="PeakVirtualMemory";width=10},
@{Expression={$_.WorkingSet64/1024};Label="WorkingSet";width=11},
@{Expression={$_.PeakWorkingSet64/1024};Label="PeakWorkingSet";width=14},
@{Expression={$_.threads.count};Label="Threads";width=6},
@{Expression={$_.Handles};Label="Handles";width=10}

}  
Run Code Online (Sandbox Code Playgroud)

之后我运行以下命令:

get-process $Processname -computername $Computername  | format-table   $a -wrap
Run Code Online (Sandbox Code Playgroud)

pk.*_*pk. 7

尝试以下方法 -

get-process $Processname -computername $Computername | ft Name,ID,VirtualMemorySize64,PeakVirtualMemorySize64,WorkingSet64,PeakWorkingSet64
Run Code Online (Sandbox Code Playgroud)

您的位数检查应该被删除,您应该只使用64位属性.旧的属性是obselete.资源