預設的perl偵錯程式就是perl直譯器本身,另外還有圖形介面的偵錯程式。因為我們
在開?br>?br>程式時一般都使用telnet訪問伺服器,所以這裡主要介紹一下預設的命
令行偵錯程式的用法。用-d 命令列選項啟動perl直譯器,例如
perl -d test.pl
即進入perl偵錯程式的互動介面。
除錯命令列表如下:(所有命令都在除錯提示符下頂格輸入,命令大小寫有關)
h: 顯示偵錯程式的幫助資訊。
|h: 以分頁形式顯示偵錯程式的幫助資訊。
h h: 顯示乙個壓縮的幫助資訊。
h 除錯命令:顯示某個除錯命令的幫助。
p 表示式: 顯示變數或表示式的值,不顯示複雜變數嵌入的結構和資料。
x 表示式: 顯示變數或表示式的值,對較為複雜的變數,以一種可讀形式顯示嵌入的結果和資料。
v 包名 變數名列表:顯示指定包內的所有(或部分)變數的值。(預設的包名為main)
x 變數名列表:顯示當前包內所有(或部分)變數的值。
注:v、x命令中的變數名列表以空格分隔且變數名前應去掉$、@或%
t:程式的呼叫棧回退一級。
s 表示式:單步執行,進入子函式。(stepinto)如果提供乙個表示式並且表示式中包括函式呼叫,則單步進入該函式內。
n 表示式:單步執行,越過子函式。(step over)
c 行號/函式名:執行到某一行或某乙個函式。
l:顯示未執行的一窗(一屏)檔案內容。
l min-max:顯示第min到第max行的檔案內容。
l 行號:顯示指定行的內容。
l 函式名:顯示指定函式的一窗(一屏)檔案內容。
w 行號:顯示某行周圍一窗(一屏)檔案內容。
f 檔名:切換到另乙個檔案。
/模式:在當前檔案中向前(檔案尾)查詢匹配的字串。
?模式:在當前檔案中向後(檔案頭)查詢匹配的字串。
l:顯示所有斷點和附加操作。
s 模式:顯示匹配(或不匹配,在模式前加!)的函式名。
t:切換跟蹤模式。
t 表示式:跟蹤執行表示式過程。
b 行號條件:在某一行設定乙個斷點,當程式執行到該行並且條件滿足時,產生中斷。
b 函式名條件:在某函式上設定乙個斷點,當程式執行到該函式並且條件滿足時,產生中斷。
b load 檔名:在某個檔案的第乙個可執行語句上設定乙個斷點。
d 行號:刪除某一行的斷點。
d:刪除所有斷點。
a 行號命令:給程式的某一行加乙個附加操作。在執行該行語句前先執行附加的操作。
a:刪除所有已安裝的附加操作。
w 表示式:增加乙個監視項。
w:刪除所有監視項。
o 選項名?:查詢偵錯程式可選項的值。
o 選項名=選項值:設定偵錯程式可選項的值。
lt perl語句:設定乙個操作顯示除錯提示符前執行的操作。
ltlt perl語句:增加乙個顯示除錯提示符前執行的操作。
gt perl語句:設定乙個離開除錯提示符**入執行態)時執行的操作。
gtgt perl語句:增加乙個離開除錯提示符**入執行態)時執行的操作。
{ 除錯命睿荷柚靡桓霾僮饗允鏡魘蘊崾痙爸蔥械牟僮鰲?br>
{{ 除錯命令:設定乙個操作顯示除錯提示符前執行的操作。
注:上述perl語句和除錯命令均可輸入多行,行尾以/轉義。
!number:重新執行以前第number次執行的除錯命令。
!-number:重新執行現在以前number次執行的除錯命令。
!模式:重新執行以前執行過的與模式匹配的除錯命令。
!!命令:不退出偵錯程式執行乙個shell命令。
h-number:顯示以前執行的number條除錯命令。如果省略number,則顯示所有執行過?br>?br>除錯命令。
r:重新啟動正在除錯的程式。
q或^d:退出偵錯程式。
|除錯命令:將除錯命令的輸出分頁顯示。
||除錯命令:類似|除錯命令,適於有大量輸出的除錯命令,例如:|vmain。
= 別名 值:給某個除錯命令乙個別名,例如:= quit q。
所有未識別的命令:當作插入的一條perl語句執行。(使用eval)
perl偵錯程式的功能還有很多,可以設定很多選項來定製偵錯程式的環境,它本身也
是用perl開發的,並且perl發布中還有介面讓你能開發其它的perl偵錯程式。如果要用
perl開發大的專案,有必要詳細了解這些細節。使用偵錯程式和設定偵錯程式選項的例子
請參考perl發布中關於perldebug的文件。
GDB偵錯程式的用法
本文是我在學習linux gdb偵錯程式的時候所做的筆記,主要記錄在使用gdb的時候常用的命令,以便於以後的複習參考,不正確的地方忘高手指教 gdb是gnu開源組織發布的乙個強大的unix下的程式偵錯程式,gdb主要可幫助工程師完成下面4個方面的功能 在除錯核心金額除錯應用程式時使用gdb命令是完全...
Perl 命令列偵錯程式的使用
如果使用eclipse寫perl程式,偵錯程式使用起來很方便,只需要滑鼠點點新增斷點然後step over,step in就ok了,但是我們更多數情況下是用putty遠端連線到linux上寫perl指令碼,這時候如果遇到問題需要除錯的時候可就比較麻煩了。我記錄一下我常用的方法吧。當然,第一步是per...
python的偵錯程式 Python 偵錯程式入門
python 生態系統包含豐富的工具和庫,可以讓開發人員更加舒適。例如,我們之前已經介紹了如何使用互動式 shell 增強 python。本文重點介紹另一種可以節省時間並提高 python 技能的工具 python 偵錯程式。python 偵錯程式 python 標準庫提供了乙個名為 pdb 的偵錯...