PSObject太大,无法测量或加载

时间:2018-08-08 17:08:16

标签: powershell

我想从Web服务器上获取一些数据,并遇到一个问题,即我无法正确处理返回对象,因为PowerShell似乎只是在等待它的无限期加载。

# Get a HtmlWebResponseObject    
$Root = Invoke-WebRequest -Uri  $BaseUrl -SessionVariable 'Session' 

然后在大多数网页上,我可以与生成的对象进行交互:

PS> $Root | Measure 

Count    : 1
Average  : 
Sum      : 
Maximum  : 
Minimum  : 
Property : 

PS> $Root.Links | Measure  

Count    : 412
Average  : 
Sum      : 
Maximum  : 
Minimum  : 
Property : 

但是,在某些情况下,对$Root.Links | Measure的调用似乎冻结了PowerShell。即使尝试使用$Links = $Root.Links将其复制到另一个对象,也会锁定PowerShell(我让它坐了一个多小时)。再次按下 Ctrl + C 取消是再次与PowerShell窗口进行交互的唯一方法。有趣的是,复制整个对象$Root1 = $Root确实可行

我将如何分析出了什么问题?我的powershell.exe的内存级别不超过70 MB,因此对我来说似乎很合理。

0 个答案:

没有答案