Inget datorprogram någonsin fungerar som avsett på första försöket . Programmerare gör misstag , vilket kan vara allt från stavfel , till gjort misstag eftersom programmeraren inte förstod någonting , till dokumentation misstag , till buggar i Perl själv . När ett program går fel , det finns ett antal tekniker för att felsöka den . Instruktioner
Debug Perlprogram manuellt
1
uttalanden Använd print . Detta är den mest primitiva sättet att felsöka Perl program . Om du vet var programmet går fel , lägg några tryckta uttalanden i att skriva ut värden . Kom ihåg att ta dessa trycksaker uttalanden ut när du är klar , eller åtminstone kommentera dem .
2
Gå igenom programmet i huvudet och jämföra vad de ska ligga till vad de egentligen är när programmet körs .
3
Aktivera varningar från kommandoraden med - w -omkopplaren på shebang linjen ( det är den # ! /usr /bin /perl linje på toppen ) med - w switch eller med " Varningar , " direktivet . "Use Varningar , " . Direktivet fungerar på alla plattformar , medan vissa plattformar ignorera shebang linjen , vilket gör det så varningar kan förekomma att du inte skulle veta om
4
Kräv inga varningar , istället behandla varningar som fel . Även om du kanske vet varför en varning inträffar och att det inte är en stor sak just nu , kanske en framtida version av Perl nedvärdera eller ändra det beteendet - i vilket fall som varning bara bröt ditt program . Perl program som körs med inga varningar kommer att ha färre buggar .
Använd Perl Debugger
5
Starta Perl debugger . Börja perl manuellt med perl kommandot och använd - d switch , följt av ditt manus och några argument du vill skicka till ditt manus : " perl - d myscript.pl arg1 arg2 "
6
Lista programmet , eftersom det är lättare att visa koden i debugger när du felsöka den och behöver radnummer att sätta brytpunkter . Du kan lista några eller alla av programmet med L -kommandot . Du kan ange ett radnummer , är en rad radnummer eller en funktion namn till listan .
7 brytpunkter
in med hjälp av kommandot "b" i delar av koden du tror sönder . Brytpunkter berätta debugger för att stoppa debugging när den når den linjen eller funktion . De kan ställas in på rader eller funktioner och kan ha villkorslöst . Till exempel , för att sätta en brytpunkt på ledningen 531 med villkoret " $ a > 10 " , skulle du använda följande kommando : " b 531 $ a > 10 "
8
Kör programmet , använda " r" -kommandot . Detta kommer att köra programmet tills en brytpunkt nås .
9
Steg genom programmet . När en brytpunkt har stoppat programmet , steg igenom programmet rad för rad med " n" -kommandot . Använd detta för att isolera där programmet är bruten .