美文网首页
LLDB命令

LLDB命令

作者: _佛祖保佑_ | 来源:发表于2021-07-15 11:32 被阅读0次
    命令命令命令命令命令 作用 原文
    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.

    相关文章

      网友评论

          本文标题:LLDB命令

          本文链接:https://www.haomeiwen.com/subject/gpyppltx.html