Perlのデバッガ

Perlデバッガの使い方のメモ書き。

起動方法

コマンドラインで以下のように入力。

$ perl -d hoge.pl

操作

移動
s ステップイン。
n ステップオーバー。
r ステップアウト。
c 次のブレークポイントまで実行する。
c line 指定した行まで実行する。
ブレークポイント
b 現在の行にブレークポイントをセットする。
b line 指定した行にブレークポイントをセットする。
b subname 指定したサブルーチンの最初の実行可能行にブレークポイントをセットする。
d 次に実行される行のブレークポイントを削除する。
d line 指定した行のブレークポイントを削除する。
D ブレークポイントを削除する。
探索系
/pattern/ 正規表現の後方探索。最後の/はなくてもOK。
?pattern? 正規表現の前方探索。最後の?はなくてもOK。
ソース表示系
l 次のソース表示(連続で入力することで移動する)。
l subname サブルーチンを表示する。
- 前のソース表示(連続で入力することで移動する)。
v 現在いる行の周辺を表示する。
変数表示系
y 自分で定義した全変数を表示する。
y varname 指定した変数を表示する。
p printと同様に扱うことができる。式の評価も可能。
V パッケージ内の全変数を表示する。
w セットすることで変数が変更されたときに教えてくれる。
サブルーチン表示系
S 全サブルーチン名を表示する。
依存関係表示系
M モジュール一覧を表示。モジュールの呼ばれている場所がわかる。
T スタックのトレースをする。メソッドがどこから呼ばれているかわかる。

プロファイリング

メソッドの起動回数や処理時間などがわかるらしい。

$ perl -d:DProf hoge.pl

結果は tmon.out へ出力される。