Архив документации OpenNet.ru /
Раздел "Perl" /
Индекс
Отладка программ
В Perl реализован превосходный механизм отладки программ.
Вам достаточно запустить программу с ключом '-d' и вы начнете работать
с интерактивным отладчиком. Вам становятся доступны все переменные и
массивы, вы можете вводить выражения и операторы, трассировать,
исследовать работу программы в пошаговом режиме и многое другое.
Ниже перечислены команды отладчика которые вы можете вводить
на его подсказку.
Команды отладчика.
-
h - Получить справку по командам.
-
T - Просмотреть стек программы
-
s - Выполнить одну команду и остановиться.
-
n - Выполнить подпрограмму и остановиться.
-
r - Выполнить текущую подпрограмму и остановиться.
-
c - Продолжить выполнение до следующей точки остановки.
-
c номер - Продолжить выполнение до строки с данным номером.
-
- Повторить последнюю команду n или s.
-
l min+incr - Вывести incr+1 строк программы начиная со строки min.
-
l min-max - Вывести строки начиная с min до max.
-
l номер - Вывести строку с указанным номером.
-
l - Вывести следующий экран строк.
-
- - Вывести предыдущий экран строк.
-
w строк - Вывести экран строк. Текущая в середине.
-
l подпрограмма - Вывести строки указанной подпрограммы.
-
/шаблон/ - Найти строку в тексте программы.
-
?шаблон? - Обратный поиск строки в тексте программы.
-
L - Вывести строки с точками останова и активами.
-
S - Вывести имена всех подпрограмм.
-
t - Включить или выключить трассировку.
-
b строка [ условие] - Установить точку остановки.
-
b подпрограмма [ условие ] - Установить точку остановки в начале
указанной подпрограммы и если указано при данном условии.
-
d - Убрать точку остановки.
-
D - Убрать все точки остановки.
-
a строка команда - Установить актив (команду которая выполнится вместе
с указанной строкой. "команда" - обычная команда Perl.
-
A - Стереть все активы.
-
< команда - Выполнять команду перед каждой остановкой.
-
> команда - Выполнить команду после остановки отладчика.
-
V модуль [имена] - Вывести значение всех или указанных имен
в модуле. Внимание! Символ '$' не вводится.
-
X [имена] - То же что и V , но только для текущего модуля.
-
! номер - Выполнить одну строку программы.
-
! -номер - Выполнить одну команду с номером предшествующим текущей
строке.
-
H - n - Вывести n последних выполненных команд.
-
q или ^D - Выход из программы.
-
команда - Выполнить команду Perl.
-
p выражение - Вывести значение выражения.
Конструктор BEGIN не отслеживается отладчиком, но можно в теле конструктора указать:
и отладчик остановится. Данная команда не вызовет ошибку при работе
без отладчика.
Архив документации на OpenNet.ru