Отладка 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 не отслеживается отладчиком, но можно в теле конструктора указать:

  • $DB::single =1;

и отладчик остановится. Данная команда не вызовет ошибку при работе без отладчика.

Рубрика: Введение в Perl

Добавить комментарий

Вам надо войти, чтобы написать комментарий.