缺省的Perl調試器就是perl解釋器本身,另外還有圖形界面的調試器。
由于在開發程序時一般都使用telnet訪問服務器,因此本文主要為大家介紹下缺省的命令行調試器的用法。
用-d命令行選項啟動Perl解釋器,例如:perl-dtest.pl即進入Perl調試器的交互界面。
調試命令列表:(所有命令都在調試提示符下頂格輸入,命令大小寫有關)
h:顯示調試器的幫助信息。
|h:以分頁形式顯示調試器的幫助信息。
hh:顯示一個壓縮的幫助信息。
h調試命令:顯示某個調試命令的幫助。
Perl調試器用法中p表達式:顯示變量或表達式的值,不顯示復雜變量嵌入的結構和數據。
x表達式:顯示變量或表達式的值,對較為復雜的變量,以一種可讀形式顯示嵌入的結構和數據。
V包名變量名列表:顯示指定包內的所有(或部分)變量的值。(缺省的包名為main)
X變量名列表:顯示當前包內所有(或部分)變量的值。
注:Perl調試器用法中V、X命令中的變量名列表以空格分隔且變量名前應去掉$、@或%
T:程序的調用棧回退一級。
s表達式:單步執行,進入子函數。(stepinto)如果提供一個表達式并且表達式中包括函數調用,則單步進入該函數內。
n表達式:單步執行,越過子函數。(stepover)
c行號/函數名:執行到某一行或某一個函數。
l:顯示未執行的一窗(一屏)文件內容。
lmin-max:顯示第min到第max行的文件內容。
l行號:顯示指定行的內容。
l函數名:顯示指定函數的一窗(一屏)文件內容。
w行號:顯示某行周圍一窗(一屏)文件內容。
f文件名:切換到另一個文件。
/模式:在當前文件中向前(文件尾)查找匹配的字符串。
?模式:在當前文件中向后(文件頭)查找匹配的字符串。
L:顯示所有斷點和附加操作。
S模式:顯示匹配(或不匹配,在模式前加!)的函數名。
t:切換跟蹤模式。
t表達式:跟蹤執行表達式過程。
b行號條件:在某一行設置一個斷點,當程序執行到該行并且條件滿足時,產生中斷。
Perl調試器用法中b函數名條件:在某函數上設置一個斷點,當程序執行到該函數并且條件滿足時,產生中斷。
bload文件名:在某個文件的第一個可執行語句上設置一個斷點。
d行號:刪除某一行的斷點。
D:刪除所有斷點。
a行號命令:給程序的某一行加一個附加操作。在執行該行語句前先執行附加的操作。
A:刪除所有已安裝的附加操作。
W表達式:增加一個監視項。
W:刪除所有監視項。
O選項名?:查詢調試器可選項的值。
O選項名=選項值:設置調試器可選項的值。
ltPerl語句:設置一個操作顯示調試提示符前執行的操作。
ltltPerl語句:增加一個顯示調試提示符前執行的操作。
gtPerl語句:設置一個離開調試提示符(轉入運行態)時執行的操作。
gtgtPerl語句:增加一個離開調試提示符(轉入運行態)時執行的操作。
{調試命令:設置一個操作顯示調試提示符前執行的操作。
{{調試命令:設置一個操作顯示調試提示符前執行的操作。
注:Perl調試器用法中上述Perl語句和調試命令均可輸入多行,行尾以\轉義。
!number:重新執行以前第number次執行的調試命令。
!-number:重新執行現在以前number次執行的調試命令。
!模式:重新執行以前執行過的與模式匹配的調試命令。
!!命令:不退出調試器執行一個shell命令。
H-number:顯示以前執行的number條調試命令。如果省略number,則顯示所有執行過的
調試命令。
R:重新啟動正在調試的程序。
q或^D:退出調試器。
|調試命令:將調試命令的輸出分頁顯示。
||調試命令:類似|調試命令,適于有大量輸出的調試命令,例如:|Vmain。
=別名值:給某個調試命令一個別名,例如:=quitq。所有未識別的命令:當作插入的一條Perl語句執行。(使用eval)
Perl調試器用法還有很多,可以設置很多選項來定制調試器的環境,它本身也是用Perl開發的,并且Perl發布中還有接口讓你能開發其它的Perl調試器。
如果要用Perl開發大的項目,有必要詳細了解這些細節。
使用調試器和設置調試器選項的例子請參考Perl發布中關于perldebug的文檔。
您可能感興趣的文章:- Perl命令行應用程序詳解
- Perl一句話命令行編程中常用參數總結
- Perl學習教程之單行命令詳解