从Get-PSCallStack获取行号?

时间:2015-11-06 15:37:58

标签: powershell

我想将行号添加到邮件格式方法中。基本上,调用此方法是在通过Write- [Whatever level]打印之前预先添加有用信息。我该怎么做?

1 个答案:

答案 0 :(得分:2)

发布和回答因为我无法找到答案,所以我想要的速度和我希望的一样快。

最佳答案:(Get-PSCallStack)[1].ScriptLineNumber

关于CallStackFrame class的MSDN文章非常有用(并Get-PSCallStack | Get-Member用于理清我看到人们使用的方法不在CallStackFrame类中的来源),但我很困惑为什么我没有看到很多人使用这个属性。我在网上找到的其他解决方案是:

(get-pscallstack)[0].Location

$lineNum = ((get-pscallstack)[$n].Location -split " line ")[1]

然而,它们并不是那么干净或准确。