shell - 调用 gdb 自动将参数传递给正在调试的程序

标签 shell gdb

我想编写一个脚本,该脚本(在某些条件下)将执行 gdb 并自动运行带有一组参数 Y 的某个程序 X。一旦程序完成执行,用户应该保持在 gdb 的提示符下,直到他/她显式退出它。

一种方法是让脚本将运行命令加上参数 Y 输出到某个文件 F,然后让脚本像这样调用 gdb:

gdb X < F

但是有没有办法在不引入临时文件的情况下做到这一点?

最佳答案

给定程序的最简单方法 X和参数列表a b c :

X a b c

就是使用gdb--args选项,如下:

gdb --args X a b c
<小时/>

gdb --help有这样的说法--args :

--args Arguments after executable-file are passed to inferior

这意味着 --args 之后的第一个参数是要调试的可执行文件,其后的所有参数都按原样传递给该可执行文件。

关于shell - 调用 gdb 自动将参数传递给正在调试的程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/322110/

相关文章:

android - 如何使用 gdbclient 在 Nexus 7 上调试内核?

oracle - 在 Shell 脚本中执行 PLSQL block 时出现问题

windows - 像打开文本文件一样打开文件(即使其扩展名不是 .txt)

linux - 使用 shell 脚本查找 HDFS 中文件是否存在

bash - cat 没有写入文件?

operating-system - 反汇编运行内核

c - 反汇编函数名称后的数字是什么意思?例如<do_magic + 197>

c++ - 当使用来自其他函数的临时 QString 的非 const QString 引用调用函数时,GDB 崩溃

python - pyenv环境下如何搭建gdb

bash - 让 bash 将条件内的错误视为错误