2009-08-11 13 views
107

は私はGDBに一度に2つのコマンドを実行しようとしています:いくつかの区切り文字 ';'で区切られた複数のコマンドがgdbにありますか?

finish; next 
私が使用してみました

「;」コマンドを分けるためにgdbは私に両方を一度にさせませんでした。

gdbで複数のコマンドを実行することは可能ですか? ';'で区切られたbashコマンドと同様です。デリミタ?

答えて

143

私はそれほど信じられませんが、私は間違っているかもしれません。あなたはこのような何かを行うことができます。

 
(gdb) define fn 
> finish 
> next 
> end 

そしてだけ入力します。それは常に利用可能であるよう

 
(gdb) fn 

あなたにも、あなたの~/.gdbinitファイルでこれを置くことができます。

+1

gdbが起動されたときに、単にexeclp( "gdb"、 "gdb"、 "-batch"、 "-n"、 "-ex"、 "bt full"、.. –

+1

人生が変わる!! –

+1

そして、あなたが関数をどのように定義したか忘れた場合は、 'show user 'を使ってそのソースを見ることができます。例えば 'show user fn'。 – ntc2

8

GDBには、このようなコマンド区切り文字はありません。私は、簡単に見ていない場合には1を追加するのは簡単だろうが、残念ながら何も....

29

コマンドラインからのgdbを実行している場合は以下のように-exパラメータで複数のコマンドを渡すことができます。

$ gdb ./prog -ex 'b srcfile.c:90' -ex 'b somefunc' -ex 'r -p arg1 -q arg2' 

これは表示や他のコマンドと組み合わせることで、gdbの実行を煩雑にすることが少なくなりました。

関連する問題