Вам нужны две вещи здесь.Во-первых, определить, если программа не работает.Это обычно известно по возвращаемому значению функции main()
программы.Если программа возвращает что-либо, отличное от 0, возникает ошибка.
В любом случае, второе, что вам нужно сделать, это перехватить стандартный вывод ошибки в файл для последующей отправки по почте.Итак:
if ! program inputfile 2> errorfile ; then
mv inputfile error_directory
mail -s "error" < errorfile
fi
rm errorfile
Вы должны проверить, однако, если ваша программа следует этому соглашению, чтобы сигнализировать об ошибке.