PowerShell中捕获异常时的行号和列号的方法
如果自己写函数动态地去执行一些脚本块或者脚本文件,那么捕获到异常时行号和列号信息非常有用。例如脚本文件:
trap{ $info=$_.InvocationInfo "在第{0}行,第{1}列捕获到异常:{2}"-f$info.ScriptLineNumber,$info.OffsetInLine,$_.Exception.Message continue } get-date 1gb/2kb Get-Service|foreach{1/0}
执行结果为:
Thursday,June26,20144:41:41PM 524288 在第9行,第15列捕获到异常:Attemptedtodividebyzero.