【发布时间】:2017-04-11 03:17:22
【问题描述】:
在 gdb 中,我们可以使用 'pwd' 显示当前文件夹,并使用 'cd' 更改当前工作文件夹。 lldb 有相同的命令吗?
【问题讨论】:
在 gdb 中,我们可以使用 'pwd' 显示当前文件夹,并使用 'cd' 更改当前工作文件夹。 lldb 有相同的命令吗?
【问题讨论】:
在 lldb 中,调试器可以创建到 platforms 的连接,它将用于上传文件、运行程序等。默认情况下,lldb 连接到“主机”平台,即您的本地系统。您可以使用platform shell 在当前平台上运行命令,因此要获取 cwd,只需:
(lldb) platform shell pwd
您不能使用platform shell 更改 cwd,因为这是一个子 shell,所以它的效果不会持续到子 shell 的执行之后。 cwd 是平台的设置,因此您可以更改它:
(lldb) platform settings -w <NEW_PATH>
【讨论】:
help command alias),允许快速访问常用命令。 lldb 有一些预制的别名(例如s 和n、bt 等)但是我们不想用内置的那些方便的短命令词的命名空间过度填充,因为那样会让人们根据他们最常用的东西来定制 lldb 变得不那么方便了。所以platform shell 没有预先构建的别名。
shell 是使用的别名。默认别名包括单字母别名s 和step,并且在lldb 命令解析器中完全匹配,因此使用shell 不会使s 产生歧义。并且没有其他“sh”命令。所以没有理由不使用明显的名称。
(lldb) file a.out 应该将本地文件a.out 加载到远程cwd 中。所以我需要知道本地cwd是什么才能指定a.out的相对路径。