2012-01-19 13 views
8

Mam program perl napisany przez kogoś innego. Kiedy go uruchomię, cicho wychodzi bez zapisywania czegokolwiek do pliku logu. Czy istnieje sposób, aby uruchomić program Perl krok po kroku, linia po linii przez tłumacza, a tym samym zobaczyć, gdzie kończy się?Jak uruchomić program Perla krok po kroku?

+4

perl -d uruchamia debugger – Hachi

+0

'perldoc' ['perlrun'] (http://perldoc.perl.org/perlrun.html) – Axeman

Odpowiedz

21

Tak, istnieje debel Perla, który można wywołać z perl -d.

Dokumentacja znajduje się w perldoc perldebug i perldoc perldebtut.

Prawdopodobnie najbardziej przydatne polecenia będzie:

s     - step into current line. 
n     - step over current line. 
r     - step out of current function. 
p <expr>   - print the expression. 
b <line|subnm> - sets a breakpoint 
T     - produce a stack trace. 
c [<line|subnm>] - continue running with optional one-time breakpoint. 
h     - help (for other commands). 
+0

Dziękuję za to. Chciałbym dodać, że do wyjścia z debuggera służy polecenie 'q' :) –

2

Hachi ma odpowiedzi, należy użyć debuggera perla uruchamiając perl -d z flagą. Aby uzyskać informacje o używaniu debuggera po jego uruchomieniu, zobacz: Perl Debugging Tutorial.

1

Istnieją dwa sposoby. Pierwszy to taki, który już dał Hachi i Llioin, który używa przełącznika wiersza poleceń "-d"

Lub użyj IDE. Ja próbowałem i używane Komodo, który działa jak uroku

http://www.activestate.com/komodo-ide

2

Jest Perl nazywany „ptkdb”, który jest samodzielnym Perl interaktywny debugger. Działa za pomocą TK gui, więc będziesz tego potrzebować.

W zależności od systemu operacyjnego musisz add some required modules.

Wywołuje go za pomocą

perl -d:ptkdb <your script> 

Jeśli uruchomiony jakiś system/Linux Unix, trzeba także X Server.

Powiązane problemy