so i am running this on bash:
# somedevice -getevent
What this command does is it just keeps running, and everytime my device sends a certa
This is probably because your "somedevice -getevent
" command's stdout is being block-buffered. According to this, stdout is by default line-buffered (i.e. what you want) if stdout is a terminal, and block-buffered otherwise.
I'd have a look at the manual for your somedevice
command to see if you can force the output to be unbuffered or line-buffered. If not, stdbuf -oL somedevice -getevent > my_record_file
should do what you want.