См. Документацию для die .
Если последний элемент LIST не заканчивается новой строкой, номер текущей строки скрипта и номер строки ввода (если есть)также печатаются, и предоставляется новая строка.
Таким образом, вы можете заставить матрицу работать, ничего не печатая, просто используя die "\n"
.Но, учитывая, что у вас есть сообщение об ошибке, я не могу понять, почему вы не используете это.
unless (-e $f1) {
die "\n Pre_check file does not exist!\n";
}
Конечно, разница в том, что сообщение теперь отправляется в STDERR, а не в STDOUT.Но это, вероятно, правильное место для этого.