LLDB ② 常用命令

2022-03-27  本文已影响0人  _涼城

breakpoint 命令

    breakpoint 是一个用于在断点上操作的命令,使用 help breakpoint 可以查看命令参数。

help breakpoint

breakpoint 的缩写

    在 lldb 中,从 brbreakpoint 都可以作为 command 执行断点相关命令,而 b 却是 breakpoint set 的缩写形式。比如:

子命令(subCommands)

子命令 描述
clear 删除或禁用指定源文件和行匹配的断点
command 用于添加、删除和列出遇到断点时执行的LLDB命令的命令
delete 删除指定断点,如果未指定则删除全部
disable 禁用。同上
enable 开启,同上
list 断点列表
modify 修改断点
name 管理断点标签名称
read 从文件中读取断点列表
write 将断点列表写入文件
set 在执行时设置断点

设置断点

清空断点

  br clear -l <linenum 行数> -f<filename 文件名称>

断点列表

  breakpoint  list

禁用断点

 breakpoint disable

遇到断点时执行的命令

breakpoint command add 命令就是给断点添加命令的命令。他会让你输入增加哪些命令,输入'DONE'表示结束。

breakpoint command add  -o "po self"

Watchpoint 命令

    除了断点,还可以使用 watchpoint 观察点, watchpoint 观察点是直接设置在内存地址上的,可以监听该内存地址位置的变化,wa 是 watchpoint 的缩写形式。

子命令 描述
command 用于添加、删除和列出观察点变化时执行的LLDB命令的命令
delete 删除指定观察点,如果未指定则删除全部
disable 禁用。同上
enable 开启,同上
list 观察点列表
ignore 忽略观察点
set 在执行时设置观察点

设置观察点

watchpoint  set variable gloabal_var

查看当前设置的全部观察点

watchpoint list

删除观察点

watchpoint delete

thread 命令

thread 可以操作和线程相关的指令

子命令

子命令 描述
backtrace 显示当前调用堆栈
continue 继续执行
exception 显示异常
info 显示信息
jump 跳转到指定地址
list 线程列表
select 切换当前选择的线程
trace 追踪线程信息
.. ..

检查线程状态

thread list

获取线程回溯

thread backtrace

线程选择

thread select 2

frame 命令

frame 命令用于检查堆栈状态

子命令

子命令 描述
diagnose 尝试确定当前停止位置用于到达寄存器或地址的路径
info 获取当前堆栈额的信息
recognizer 用于编辑和查看帧识别器的命令
select 切换当前选中堆栈
variable 显示堆栈的参数和局部变量

显示堆栈的参数和局部变量

frame variable

expression 命令

    expression 在当前线程上执行表达式。使用 LLDB 的默认格式显示任何返回值。
    短命令 p、print 是 expression 的缩写形式
    短命令 po 是 expression -O 的缩写形式,用于显示对象的描述

上一篇 下一篇

猜你喜欢

热点阅读