某些变量仅在 when 命令主体中以及对于下表中所示的特定事件有效。
表 B–1 对 sig 事件有效的变量
变量 |
说明 |
---|---|
$sig |
触发事件的信号数 |
$sigstr |
$sig 的名称 |
$sigcode |
$sig 的子代码(如果适用) |
$sigcodestr |
$sigcode 的名称 |
$sigsender |
信号发出方的进程 ID(如果适用) |
表 B–2 对 exit 事件有效的变量
变量 |
说明 |
---|---|
$exitcode |
传递给 _exit(2) 或 exit(3) 的参数的值或 main 的返回值 |
表 B–3 对 dlopen 和 dlclose 事件有效的变量
变量 |
说明 |
---|---|
$dlobj |
装入对象 dlopened 或 dlclosed 的路径名 |
表 B–4 对 sysin 和 sysout 事件有效的变量
变量 |
说明 |
---|---|
$syscode |
系统调用号 |
$sysname |
系统调用名 |
表 B–5 对 proc_gone 事件有效的变量
变量 |
说明 |
---|---|
$reason |
signal、exit、kill 或 detach 之一 |
表 B–6 对 thr_create 事件有效的变量
变量 |
说明 |
---|---|
$newthread |
新建线程的 ID(例如 t@5) |
$newlwp |
新建 LWP 的 ID(例如 l@4) |
表 B–7 对 watch 事件有效的变量
变量 |
说明 |
---|---|
$watchaddr |
正在写入、读取或执行的地址 |
$watchmode |
以下项之一:r 代表读取,w 代表写入,x 代表执行;后跟以下项之一:a 代表之后,b 代表之前 |