Команда capture () ?Или capturex ().
Цитируется по ссылке:
Обработка исключений
В случае, если команда возвращает неожиданный статус, выполняется и захватвызовет исключение, которое, если оно не будет обнаружено, прервет вашу программу с ошибкой.
Захватить исключение очень просто:
eval {
run("cat *.txt");
};
if ($@) {
print "Something went wrong - $@\n";
}
Подробнее см. в разделе диагностики ниже.