Каков правильный способ умереть с ошибкой, но без трассировки стека в perl?

я пишу сценарий perl, и в той части, где я проверяю параметры, указанные пользователем в командной строке, я хочу выйти с ошибкой, объясняющей, что не так с параметрами.В этом случае нет необходимости в трассировке стека вместе с этим сообщением об ошибке. Итак, как лучше всего умереть с сообщением об ошибке, но без трассировки стека или отладочной информации?

Я пробовал следующее:

die "Invalid options";

который производит

Invalid options at myscript.pl line 49.

Затем я попробовал

use Carp;
...
croak "Invalid options";

, который производит

Invalid options at myscript.pl line 47
    main::prepare_output_directory() called at myscript.pl line 546

Так как же я могу просто умереть с недопустимыми параметрами и ничем другим?

Дополнительный вопрос: почему квакан ​​ сообщает мне, что ошибка находится в строке 47, когда фактический вызов каркан на линии 49?

6
задан tshepang 31 July 2014 в 07:08
поделиться