4

gdb マニュアルには、次の部分があります。

そうでなければ

このコマンドを使用すると、条件付きで実行されるコマンドをスクリプトに含めることができます。if コマンドは、評価する式である単一の引数を取ります...

次のような数値式を使用すると、gdbinit でテストを実行できます。

if (42 == 42)
    print "42"
end

しかし、次のように、文字列に対してテストを実行したい場合:

if ("a" == "a")
    print "yes"
end

次に、gdb を起動するとエラーが発生しました。

.gdbinit:45: Error in sourced command file:
You can't do that without a process to debug.

条件付きブロックを作成するために、式の構文に関するドキュメントや例を見つけようとしましたが、うまくいきませんでした。

私が達成したいのは、環境変数に基づいて一連のコマンドを追加することです。したがって、gdbinit にこの種のセクションが必要です。

if ("${myEnvVar}" == "someSpecialValue")
    #my set of special values
end

それを達成する方法は?

編集: Python を使用してこの種の操作を実行するのが最も簡単な方法のようです: .gdbinit 内および gdb 自体内の環境変数にアクセスするには?

「純粋な」gdbコマンドでこれを達成する方法がない場合、この質問は重複として閉じる必要があると思います.

4

1 に答える 1