In a “cronjob” , this “Alarm clock” message is somewhat difficult to hide…
Same effect in bash shell:
$ perl -e ‘alarm 5;sleep(10);’ >/dev/null 2>&1
Alarm clock
$ ( perl -e ‘alarm 5;sleep(10);’ ) >/dev/null 2>&1
Alarm clock
My best answer:
( trap ‘exit 1’ SIGALRM ; perl -e ‘alarm 5;sleep(10);’ ) >/dev/null