Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > gnu.bash.bug > #15758
| From | Bize Ma <binaryzebra@gmail.com> |
|---|---|
| Newsgroups | gnu.bash.bug |
| Subject | Fwd: read -t 0 fails to detect input. |
| Date | 2019-12-19 19:07 -0400 |
| Message-ID | <mailman.1160.1576796891.1979.bug-bash@gnu.org> (permalink) |
| References | <CAFra36gNku2DTCyivz+caMGnTf7GvGJUTiWicUnBZatcckXGcQ@mail.gmail.com> <7e6fccb4-e5b5-eb2b-8b12-eeee9d638ae1@case.edu> <CAFra36iJqGfocqtVYqcdfkePJZ5xrWg8=pfKZXymD34Gaz02rA@mail.gmail.com> <CAFra36iUQqc-yUmZyu-3ty15jWiN=5o_XQ8pxLsZieEZP8=Lsw@mail.gmail.com> |
To: Chester Ramey <chet.ramey@case.edu> On thu., dec. 19 of 2019 at 12:40, Chet Ramey (<chet.ramey@case.edu>) wrote: > On 12/18/19 6:40 PM, Bize Ma wrote: > > >>> The exit status is 0 if input is available on the specified file > > descriptor, non-zero otherwise. > > Bash-5.0 uses select/FIONREAD to determine whether or not there is input > available on the file descriptor. Those don't wait; they test whether or > not there is input on the specified file descriptor at the point they are > called. > Thanks Chet. Could you please comment about this assertions: 1.- bash will either do a select() or an ioctl(FIONREAD), or neither of them, but not both, as it should for it to work. read -t0 is broken. Do not use it – mosvy. <https://unix.stackexchange.com/questions/33049/how-to-check-if-a-pipe-is-empty-and-run-a-command-on-the-data-if-it-isnt/498064#comment969997_498064> 2.- Conclusion: read -t0 is *broken* in bash. Don't use it. – <https://unix.stackexchange.com/users/308316/mosvy> mosvy <https://unix.stackexchange.com/questions/33049/how-to-check-if-a-pipe-is-empty-and-run-a-command-on-the-data-if-it-isnt/498065?noredirect=1#comment916652_497121>
Back to gnu.bash.bug | Previous | Next | Find similar | Unroll thread
Fwd: read -t 0 fails to detect input. Bize Ma <binaryzebra@gmail.com> - 2019-12-19 19:07 -0400
csiph-web