LLDB命令全解析

lldb

前言

这篇文章,主要的内容是lldb命令用法。我们一般在iOS开发中,当我们在debug调试的时候,Xcode已经为我们提供可视化的界面。但是,这部分信息是非常有限的。如果,当前可视化界面提供的信息不能满足你,或者你想让你的技术表现的更cool一些,再或者你从事逆向开发。那么这么文章将可以满足你以上所有需求。当然,这也是你进阶iOS高级开发者,需要修炼的秘籍。

LLDB 命令结构

<command> [<subcommand> [<subcommand>...]] <action> [-options [option-value]] [argument [argument...]]

[ ]标示命令是可选命令也可以写,也可以不写。
<command>(命令) 和 <subcommand> (子命令)是lldb调试对象的名称。命令和子命令在一个层次结构中,一个特定的命令对象为他后面的一个子命令对象创建上下文,依次类推。

help命令

help.png

当你忘记command的时候可以在lldb里面输出help查看所有lldb所支持的command命令:

command命令解析
apropos

apropos : 当你对一条命令比较模糊,记不住他的全貌的时候可以使用这个命令来帮助你。
比如:对breakpoint命令比较模糊,可以在终端输入lldb,然后输入:

apropos breakpoint
apropos.png

注:apropos只对command命令有效

breakpoint

断点命令

help breakpoint
help breakpoint.png
help breakpoint clear
help breakpoint clear.png

可以看到命令的含义:删除或者禁用指定源文件和行匹配的断点。
如:

breakpoint clear -f ViewController.m -l 32

删除ViewController.m文件中32行的断点。

help breakpoint command
help breakpoint command.png

操作已经断过点的命令,对该断点可以增加,删除,列出,断点命令。
给断点1增加打印命令:po self.view

breakpoint command add 1
Enter your debugger command(s).  Type 'DONE' to end.
> po self.view
> DONE

列出断点1中的命令

br command list 1
Breakpoint 1:
    Breakpoint commands:
      po self.view

删除断点1中的命令

br command delete 1

也可以执行:

help breakpoint command add

查看更加详细的add命令

breakpoint delete/disable/enable/list

这四条命令分别是对断点的删除,禁止,是生效,列出

breakpoint list 1

罗列出1断点的具体信息,其余命令同上的用法

bugreport

创建特定域的bug报告

bugreport unwind XXX (XXX 是你想要看的方法名)
如:
bugreport unwind viewDidLoad:
disassemble

拆分当前目标中的特定说明。默认当前线程和堆栈的当前函数

expression
frame
memory
register
thread
watchpoint
language
log
platform
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • LLDB的Xcode默认的调试器,它与LLVM编译器一起,带给我们更丰富的流程控制和数据检测的调试功能。平时用Xc...
    CoderSC阅读 5,264评论 0 2
  • [转]浅谈LLDB调试器文章来源于:http://www.cocoachina.com/ios/20150126/...
    loveobjc阅读 7,482评论 2 6
  • 转载 与调试器共舞 - LLDB 的华尔兹: https://objccn.io/issue-19-2/ 推荐:i...
    F麦子阅读 8,634评论 0 10
  • 随着Xcode 5的发布,LLDB调试器已经取代了GDB,成为了Xcode工程中默认的调试器。它与LLVM编译器一...
    随风飘荡的小逗逼阅读 5,228评论 0 0
  • Xcode 上的lldb LLDB 调试工具,gdb替代品;LLVM : Low Level Virtual Ma...
    helinyu阅读 4,545评论 0 2

友情链接更多精彩内容