String 使用lldb查找字符串内存

String 使用lldb查找字符串内存,string,macos,lldb,mach-o,String,Macos,Lldb,Mach O,你好,我正在mac os上的lldb中查找字符串的地址 在GDB中,我将使用find命令,在其中搜索地址。 但是我找不到lldb的这样一个命令,我知道字符串在cstring部分,在我的例子中是0x00000000002e4f08-0x000000000032e0a8。 但是我需要知道确切的位置。如果您可以访问Xcode 6预发布工具,lldb将包含一个新的内存查找命令。Enrico在几个月前添加了此命令的快速实现。一个简单的示例,使用三个lldb命令图像转储部分,内存查找,内存读取在剥离的发布应

你好,我正在mac os上的lldb中查找字符串的地址

在GDB中,我将使用
find
命令,在其中搜索地址。 但是我找不到lldb的这样一个命令,我知道字符串在cstring部分,在我的例子中是
0x00000000002e4f08-0x000000000032e0a8

但是我需要知道确切的位置。

如果您可以访问Xcode 6预发布工具,lldb将包含一个新的
内存查找
命令。Enrico在几个月前添加了此命令的快速实现。

一个简单的示例,使用三个lldb命令
图像转储部分
内存查找
内存读取
在剥离的发布应用程序中查找字符串

(lldb) image dump sections MyAppBinary 
[0x0000010462c000-0x00000107744000] 0x0003118000 MyApp`__TEXT
[0x00000107744000-0x00000107d48000] 0x0000604000 MyApp`__DATA
/* removed sections for brevity */

(lldb) mem find -s "youtube" -- 0x00000107744000 0x00000107d48000
data found at location: 0x10793362c
0x10793362c: 79 6f 75 74 75 62 65 2e 63 6f 6d 2f 65 6d 62 65  youtube.com/embe


(lldb) memory read -c100 0x10793362c
0x10793362c: 79 6f 75 74 75 62 65 2e 63 6f 6d 2f 65 6d 62 65  youtube.com/embe
0x10793363c: 64 2f 58 46 67 45 59 75 35 71 66 36 38 3f 61 75  d/XFgccu5qf68?a

如果您想要
lldb
的一些有用的别名和脚本,可以访问。例如,我更喜欢Derek的脚本
部分
而不是
图像转储部分MyAppBinary

它有你可以使用的符号吗?@trojanfoe我不知道你对符号的确切意思,但是当我在lldb之外键入'cstring'时,字符串就在那里,所以我想是的?如果程序有调试信息,那么答案将是肯定的,因此这将是最好的途径。调查如何查询符号信息(可能是
图像查找…
)。好的,谢谢,我没有访问这些工具的权限,但我想目前没有办法,但我还是找到了解决方法。什么是
(lldb)部分
?我找不到内置命令?是你添加的别名吗?如果是,它的别名是什么?感谢@AymenTM的评论。非常抱歉。我使用了这些脚本中的别名:。让我更新我的答案。