The "read" built-in documentation says,

    Exit Status:
    The return code is zero, unless end-of-file is encountered, read times out,
    or an invalid file descriptor is supplied as the argument to -u.

I would like to be able to distinguish the no-data conditions.  In
particular I want to know whether I got a timeout or an end-of-file,
but as you can see, Bash is not documented to behave differently in
these two cases.

As it happens, in Bash 4.2, "read" exits with status 1 on EOF and
SIGALRM on timeout.  This is just what I want.  Can I count on this
behavior?  If so, please commit to it with documentation.

 < Stephen

Reply via email to