PowerShell中捕获异常时的行号和列号的方法

时间:2021-12-17 04:33:23

如果自己写函数动态地去执行一些脚本块或者脚本文件,那么捕获到异常时行号和列号信息非常有用。例如脚本文件:

复制代码 代码如下:

trap{
$info=$_.InvocationInfo
"在第{0}行,第{1}列捕获到异常:{2}" -f $info.ScriptLineNumber,$info.OffsetInLine ,$_.Exception.Message
continue
}
 
get-date
1gb/2kb
Get-Service | foreach {1/0}


执行结果为:

复制代码 代码如下:

Thursday, June 26, 2014 4:41:41 PM
524288
在第9行,第15列捕获到异常:Attempted to divide by zero.