C:\usr\local\share\PassThru\perl>perl -wMstrict -e "sub p { local $, = qq{: }; print $], scalar(localtime), @_ }; alarm 2; $SIG{ALRM}=sub{p qq{Timeout reached\n} }; p qq{before I hit enter\n}; <>; p qq{after I hit enter\n}" 5.026002: Fri Jul 20 12:20:40 2018: before I hit enter never saw the timeout, so hit enter 5.026002: Fri Jul 20 12:20:57 2018: after I hit enter C:\usr\local\share\PassThru\perl>perl -wMstrict -e "sub p { local $, = qq{: }; print $], scalar(localtime), @_ }; alarm 2; $SIG{ALRM}=sub{p qq{Timeout reached } }; p qq{before I hit enter\n}; <>; p qq{after I hit enter\n}" 5.026002: Fri Jul 20 12:21:05 2018: before I hit enter never saw the timeout, so hit enter 5.026002: Fri Jul 20 12:21:21 2018: after I hit enter