LLDB命令

命令命令命令命令命令 作用 原文
apropos 列出与单词或主题相关的调试器命令。 List debugger commands related to a word or subject.
breakpoint 操作断点的命令(请参阅“help b”以方便速记)。 Commands for operating on breakpoints (see 'help b' for shorthand.)
command 自定义LLDB命令管理命令。 Commands for managing custom LLDB commands.
disassemble 反汇编当前目标中的指定指令。默认为当前线程和堆栈帧的当前函数。 Disassemble specified instructions in the current target. Defaults to the current function for the current thread and stack frame.
expression 计算当前线程上的表达式。使用LLDB的默认格式显示任何返回值。 Evaluate an expression on the current thread. Displays any returned value with LLDB's default formatting.
frame 用于选择和检查当前线程的堆栈帧的命令。 Commands for selecting and examing the current thread's stack frames.
gdb-remote 通过远程GDB服务器连接到一个进程。如果没有指定主机,则假定为localhost。 Connect to a process via remote GDB server. If no host is specifed, localhost is assumed.
gui 切换到基于GUI的诅咒模式。 Switch into the curses based GUI mode.
help 显示所有调试器命令的列表,或给出有关特定命令的详细信息。 Show a list of all debugger commands, or give details about a specific command.
kdp-remote 通过远程KDP服务器连接到一个进程。如果没有指定UDP端口,则假定端口为41139。 Connect to a process via remote KDP server. If no UDP port is specified, port 41139 is assumed.
language 特定于源语言的命令。 Commands specific to a source language.
log 控制LLDB内部日志记录的命令。 Commands controlling LLDB internal logging.
memory 用于操作当前目标进程中的内存的命令。 Commands for operating on memory in the current target process.
platform 管理和创建平台的命令。 Commands to manage and create platforms.
plugin LLDB插件管理命令。 Commands for managing LLDB plugins.
process 用于与当前平台上的进程交互的命令。 Commands for interacting with processes on the current platform.
quit 退出LLDB调试器。 Quit the LLDB debugger.
register 用于访问当前线程和堆栈帧的寄存器的命令。 Commands to access registers for the current thread and stack frame.
reproducer
用于操作复制程序的命令。
重新生成程序可以捕获带有所有依赖项的完整调试会话。
生成的复制器用于在调试调试器时重播调试会话。
因为复制器需要从头到尾的整个调试会话,所以您需要以捕获或重播模式启动调试器,通常通过命令行驱动程序。
复制器是不相关的记录重播调试,因为在重播期间您不能与调试器交互。

Commands for manipulating reproducers. Reproducers make it possible to capture full debug sessions with all its dependencies.
The resulting reproducer is used to replay the debug session while debugging the debugger.
Because reproducers need the whole the debug session from beginning to end, you need to launch the debugger in capture or replay mode, commonly though the command line driver.
Reproducers are unrelated record-replay debugging, as you cannot interact with the debugger during replay.
script 使用提供的代码调用脚本解释器并显示任何结果。如果没有提供代码,则启动交互式解释器。 Invoke the script interpreter with provided code and display any results. Start the interactive interpreter if no code is supplied.
settings LLDB设置管理命令。 Commands for managing LLDB settings.
source 用于检查由当前目标进程的调试信息描述的源代码的命令。 Commands for examining source code described by debug information for the current target process.
statistics 打印调试会话的统计信息 Print statistics about a debugging session
target 用于操作调试器目标的命令。 Commands for operating on debugger targets.
thread 用于操作当前进程中的一个或多个线程的命令。 Commands for operating on one or more threads in the current process.
type 用于在类型系统上操作的命令。 Commands for operating on the type system.
version 显示LLDB调试器版本。 Show the LLDB debugger version.
watchpoint 在观察点上操作的命令。当前命令的缩写(输入“帮助命令别名”获取更多信息): Commands for operating on watchpoints. Current command abbreviations (type 'help command alias' for more info):
add-dsym 通过指定调试符号文件的路径,或使用选项指定要为其下载符号的模块,将调试符号文件添加到目标的当前模块之一。 Add a debug symbol file to one of the target's current modules by specifying a path to a debug symbols file, or using the options to specify a module to download symbols for.
attach 通过ID或名称附加到进程。 Attach to process by ID or name.
b 使用几种简写格式中的一种设置断点。 Set a breakpoint using one of several shorthand formats.
bt 显示当前线程的调用堆栈。任何数字参数最多显示那么多帧。参数'all'显示所有线程。 Show the current thread's call stack. Any numeric argument displays at most that many frames. The argument 'all' displays all threads.
c 继续执行当前进程中的所有线程。 Continue execution of all threads in the current process.
call 计算当前线程上的表达式。使用LLDB的默认格式显示任何返回值。 Evaluate an expression on the current thread. Displays any returned value with LLDB's default formatting.
continue 继续执行当前进程中的所有线程。 Continue execution of all threads in the current process.
detach 从当前目标进程分离。 Detach from the current target process.
di 反汇编当前目标中的指定指令。默认为当前线程和堆栈帧的当前函数。 Disassemble specified instructions in the current target. Defaults to the current function for the current thread and stack frame.
dis 反汇编当前目标中的指定指令。默认为当前线程和堆栈帧的当前函数。 Disassemble specified instructions in the current target. Defaults to the current function for the current thread and stack frame.
display 在每个stop处计算一个表达式(参见“help target stop-hook”)。 Evaluate an expression at every stop (see 'help target stop-hook'.)
down 选择一个更新的堆栈帧。默认情况下移动一帧,数值参数可以指定任意数字。 Select a newer stack frame. Defaults to moving one frame, a numeric argument can specify an arbitrary number.
env 查看和设置环境变量的简写。 Shorthand for viewing and setting environment variables.
exit 退出LLDB调试器。 Quit the LLDB debugger.
f 从当前线程中按索引选择当前堆栈帧(参见thread backtrace)。 Select the current stack frame by index from within the current thread (see 'thread backtrace'.)
file 使用该参数作为主可执行文件创建一个目标。 Create a target using the argument as the main executable.
finish 完成当前堆栈帧的执行,返回后停止。默认为当前线程,除非指定。 Finish executing the current stack frame and stop after returning. Defaults to current thread unless specified.
image 用于访问一个或多个目标模块信息的命令。 Commands for accessing information for one or more target modules.
j 将程序计数器设置为新地址。 Set the program counter to a new address.
jump 将程序计数器设置为新地址。 Set the program counter to a new address.
kill 终止当前目标进程。 Terminate the current target process.
l 使用几种简写格式之一列出相关的源代码。 List relevant source code using one of several shorthand formats.
list 使用几种简写格式之一列出相关的源代码。 List relevant source code using one of several shorthand formats.
n 源级单步,跨步调用。默认为当前线程,除非指定。 Source level single step, stepping over calls. Defaults to current thread unless specified.
next 源级单步,跨步调用。默认为当前线程,除非指定。 Source level single step, stepping over calls. Defaults to current thread unless specified.
nexti 指令级单步、跨步调用。默认为当前线程,除非指定。 Instruction level single step, stepping over calls. Defaults to current thread unless specified.
ni 指令级单步、跨步调用。默认为当前线程,除非指定。 Instruction level single step, stepping over calls. Defaults to current thread unless specified.
p 计算当前线程上的表达式。使用LLDB的默认格式显示任何返回值。 Evaluate an expression on the current thread. Displays any returned value with LLDB's default formatting.
parray lldb将计算EXPRESSION以在内存中获得一个类型指向数组的指针,并显示数组中该类型的COUNT元素。 parray <COUNT> <EXPRESSION> -- lldb will evaluate EXPRESSION to get a typed-pointer-to-an-array in memory, and will display COUNT elements of that type from the array.
po 计算当前线程上的表达式。显示格式由类型的作者控制的任何返回值。 Evaluate an expression on the current thread. Displays any returned value with formatting controlled by the type's author.
poarray lldb将对EXPRESSION求值以获得内存中COUNT对象数组的地址,并对它们调用po。 poarray <COUNT> <EXPRESSION> -- lldb will evaluate EXPRESSION to get the address of an array of COUNT objects in memory, and will call po on them.
print 计算当前线程上的表达式。使用LLDB的默认格式显示任何返回值。 Evaluate an expression on the current thread. Displays any returned value with LLDB's default formatting.
q 退出LLDB调试器。 Quit the LLDB debugger.
r 在调试器中启动可执行文件。 Launch the executable in the debugger.
rbreak 在可执行文件中设置一个或一组断点。 Sets a breakpoint or set of breakpoints in the executable.
re 用于访问当前线程和堆栈帧的寄存器的命令。 Commands to access registers for the current thread and stack frame.
repl 计算当前线程上的表达式。使用LLDB的默认格式显示任何返回值。 Evaluate an expression on the current thread. Displays any returned value with LLDB's default formatting.
run 在调试器中启动可执行文件。 Launch the executable in the debugger.
s 源级单步,进入调用。默认为当前线程,除非指定。 Source level single step, stepping into calls. Defaults to current thread unless specified.
shell 在主机上执行shell命令。 Run a shell command on the host.
si 指令级单步,进入呼叫。默认为当前线程,除非指定。 Instruction level single step, stepping into calls. Defaults to current thread unless specified.
sif 步骤遍历当前块,如果直接进入名称与TargetFunctionName匹配的函数,则停止。 Step through the current block, stopping if you step directly into a function whose name matches the TargetFunctionName.
step 源级单步,进入调用。默认为当前线程,除非指定。 Source level single step, stepping into calls. Defaults to current thread unless specified.
stepi 指令级单步,进入呼叫。默认为当前线程,除非指定。 Instruction level single step, stepping into calls. Defaults to current thread unless specified.
t 更改当前选择的线程。 Change the currently selected thread.
tbreak 使用几种简写格式中的一种设置一次性断点。 Set a one-shot breakpoint using one of several shorthand formats.
undisplay 在每个Stop(由Stop -hook index指定)处停止显示表达式。 Stop displaying expression at every stop (specified by stop-hook index.)
up 选择旧的堆栈帧。默认情况下移动一帧,数值参数可以指定任意数字。 Select an older stack frame. Defaults to moving one frame, a numeric argument can specify an arbitrary number.
v
显示当前堆栈帧的变量。默认为作用域内的所有参数和局部变量。可以指定参数、局部变量、文件静态变量和文件全局变量的名称。
可以指定聚合变量的子变量,如'var->child.x'。'frame variable'中的->和[]操作符如果存在,则不会调用操作符重载,而是直接访问指定的元素。
如果要触发操作符重载,请使用expression命令来打印变量。
值得注意的是,除了重载操作符外,打印局部变量'expr local_var'和'frame var local_var'会产生相同的结果。
然而,“帧变量”更有效率,因为它使用调试信息和内存直接读取,而不是解析和计算一个表达式,这甚至可能涉及JITing和在目标程序中运行代码。


Show variables for the current stack frame. Defaults to all arguments and local variables in scope. Names of argument, local, file static and file global variables can be specified.
Children of aggregate variables can be specified such as 'var->child.x'. The -> and [] operators in 'frame variable' do not invoke operator overloads if they exist, but directly access the specified element.
If you want to trigger operator overloads use the expression command to print the variable instead.
It is worth noting that except for overloaded operators, when printing local variables 'expr local_var' and 'frame var local_var' produce the same results.
However, 'frame variable' is more efficient, since it uses debug information and memory reads directly, rather than parsing and evaluating an expression, which may even involve JITing and running code in the target program.
var
显示当前堆栈帧的变量。默认为作用域内的所有参数和局部变量。可以指定参数、局部变量、文件静态变量和文件全局变量的名称。
可以指定聚合变量的子变量,如'var->child.x'。'frame variable'中的->和[]操作符如果存在,则不会调用操作符重载,而是直接访问指定的元素。
如果要触发操作符重载,请使用expression命令来打印变量。
值得注意的是,除了重载操作符外,打印局部变量'expr local_var'和'frame var local_var'会产生相同的结果。
然而,“帧变量”更有效率,因为它使用调试信息和内存直接读取,而不是解析和计算一个表达式,这甚至可能涉及JITing和在目标程序中运行代码。

Show variables for the current stack frame. Defaults to all arguments and local variables in scope. Names of argument, local, file static and file global variables can be specified.
Children of aggregate variables can be specified such as 'var->child.x'. The -> and [] operators in 'frame variable' do not invoke operator overloads if they exist, but directly access the specified element.
If you want to trigger operator overloads use the expression command to print the variable instead.
It is worth noting that except for overloaded operators, when printing local variables 'expr local_var' and 'frame var local_var' produce the same results.
However, 'frame variable' is more efficient, since it uses debug information and memory reads directly, rather than parsing and evaluating an expression, which may even involve JITing and running code in the target program.
vo 显示当前堆栈帧的变量。默认为作用域内的所有参数和局部变量。可以指定参数、局部变量、文件静态变量和文件全局变量的名称。
可以指定聚合变量的子变量,如'var->child.x'。'frame variable'中的->和[]操作符如果存在,则不会调用操作符重载,而是直接访问指定的元素。
如果要触发操作符重载,请使用expression命令来打印变量。
值得注意的是,除了重载操作符外,打印局部变量'expr local_var'和'frame var local_var'会产生相同的结果。
然而,“帧变量”更有效率,因为它使用调试信息和内存直接读取,而不是解析和计算一个表达式,这甚至可能涉及JITing和在目标程序中运行代码。

Show variables for the current stack frame. Defaults to all arguments and local variables in scope. Names of argument, local, file static and file global variables can be specified.
Children of aggregate variables can be specified such as 'var->child.x'. The -> and [] operators in 'frame variable' do not invoke operator overloads if they exist, but directly access the specified element.
If you want to trigger operator overloads use the expression command to print the variable instead.
It is worth noting that except for overloaded operators, when printing local variables 'expr local_var' and 'frame var local_var' produce the same results.
However, 'frame variable' is more efficient, since it uses debug information and memory reads directly, rather than parsing and evaluating an expression, which may even involve JITing and running code in the target program.
x 从当前目标进程的内存中读取。 Read from the memory of the current target process.
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,133评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,682评论 3 390
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,784评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,508评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,603评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,607评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,604评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,359评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,805评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,121评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,280评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,959评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,588评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,206评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,442评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,193评论 2 367
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,144评论 2 352

推荐阅读更多精彩内容

  • LLDB阐述 LLDB 是一个有着 REPL 的特性和 C++ ,Python 插件的开源调试器。LLDB 绑定在...
    made_China阅读 557评论 0 1
  • 1.常用的命令 p-------返回值的类型以及命令结果的引用名po -----输出对应的值call ----ca...
    落寒z阅读 774评论 0 0
  • XCode版本:9.2 (9C40b) apropos-- List debugger commands rela...
    Kasign阅读 893评论 0 0
  • 第二章延迟了几天才写,原因是我自己也正在学习使用LLDB,不过在学习中遇到了一些困惑:在 Objective-C+...
    BluePandaLi阅读 1,725评论 0 1
  • (lldb) help Debugger commands: apropos -- List debug...
    徒步鲁斯阅读 487评论 0 0