如何在 Xcode 控制台中删除 Hook 1 (expr -- @import UIKit display @import Appkit)

nic*_*pan 3 lldb xcode9.4

我在 mac 终端应用程序中使用命令echo display @import UIKit >> ~/.lldbinitecho display @import AppKit >> ~/.lldbinit来加载 UIKit 以便打印框架或绑定到 Xcode 控制台,但是当稍后使用该命令时,Xcode 控制台总是打印:

- Hook 1 (expr -- @import UIKit display @import AppKit)

- Hook 2 (expr -- @import UIKit delete @import AppKit)

- Hook 3 (expr -- @import UIKit display @import AppKit)

error: Aborting reading of commands after command #0: 'expr -- @import UIKit 
display @import AppKit' failed with error: while importing modules:
error: Header search couldn't locate module AppKit

error: Aborting reading of commands after command #0: 'expr -- @import UIKit 
delete @import AppKit' failed with error: while importing modules:
error: Header search couldn't locate module AppKit

error: Aborting reading of commands after command #0: 'expr -- @import UIKit 
display @import AppKit' failed with error: while importing modules:
error: Header search couldn't locate module AppKit
Run Code Online (Sandbox Code Playgroud)

我想摆脱它,但我不知道删除命令,如果有人知道请与我分享,谢谢。

Jim*_*ham 5

您可以使用:

(lldb) undisplay <HOOK ID>
Run Code Online (Sandbox Code Playgroud)

display 是“target stop-hook add”的稍微复杂的别名,它的作用是:

(lldb) target stop-hook add -o "expr <YOUR TEXT>"
Run Code Online (Sandbox Code Playgroud)

所以你也可以使用删除它们

(lldb) target stop-hook delete <HOOK ID>
Run Code Online (Sandbox Code Playgroud)

正如您所猜测的,undisplay是后一个命令的别名。