2009-07-01 12 views
3

を実行するときに、GDBにコマンドを渡す、と私は私の引数としてコマンド私はプログラムをデバッグするGDBを使用していたプログラム

$(perl -e 'print "A"x20') 

の出力を持っていると思います。どうやってやるの?このようにして、議論は非常に柔軟になるでしょう。

+0

あなたはハッキングを読んでいますか:搾取の芸術ですか?私は彼がスタックを粉砕するためにperlを使ったことを覚えています。 – kmm

答えて

4

runコマンドを使用して、後で引数として渡すことができます。あなたは上記をしたい場合

、試してみてください。

run `$(perl -e 'print "A"x20')` 

をコマンドとして使用すると、GDBを起動したら。

1

gdbでプログラムを正しく起動しなかったようです。あなたのプログラムが「a.out」であれば、bash:

$gdb a.out 
(gdb)run `$(perl -e 'print "A"x20')` 

希望します。

3

上記は少しオフで、私にとってもうまくいかないでしょう。デバッグを開始するために後

set args "`perl -e 'print "A"x20;'`" 

はいつものように、単に「実行」を入力し、適切な引数が渡される必要があります:あなたは、設定された引数のコマンドを使用している場合は、次のことが(少なくとも私のシステム上で)動作します。

+0

これは時間のために検索して、感謝! – 1337holiday