gpt4 book ai didi

linux - 如何使用 shell 命令在 GDB 中设置环境变量?

转载 作者:行者123 更新时间:2023-12-03 01:26:45 24 4
gpt4 key购买 nike

我想在其环境中仅使用单个变量 MyVar 来运行 gdb

但是,变量的内容相当复杂,包含不可打印的 ASCII,因此最好使用例如MyVar=$(python -c 'print("\xff...")')

我有两个选择:

  1. 在运行 gdb 之前在 bash 中设置 MyVar。然后在gdb内,使用unsetenvironmentNAME单独删除所有其他环境变量(非常乏味!)。

  2. 使用unsetenvironment清除所有环境变量。然后在 gdb 中,使用 shell 命令设置 MyVar(如上所述)(如何?)

有什么想法吗?

最佳答案

从 shell 命令行启动 gdb 时,可以指定运行哪个程序,with which arguments (with --args) ,甚至可以借助env修改程序的环境!

我刚刚成功地做到了这样:

gdb --ex=run --args env LD_BIND_NOW=1 LD_DEBUG=libs \
apt-get install --yes $(cat pkgs-to-install-to-crash-apt)

--ex=run是让gdb立即运行。

在你的情况下,你会做env -i

与建议的env -i VAR=... gdb程序不同的是,只有您检查的程序在特殊环境下,而不是gdb。

关于linux - 如何使用 shell 命令在 GDB 中设置环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55593045/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com