stdbuf - Run COMMAND, with modified buffering operations for its standard
Run COMMAND, with modified buffering operations for its standard streams.
Mandatory arguments to long options are mandatory for short options too.
- -i, --input=MODE
- adjust standard input stream buffering
- -o, --output=MODE
- adjust standard output stream buffering
- -e, --error=MODE
- adjust standard error stream buffering
- display this help and exit
- output version information and exit
If MODE is 'L' the corresponding stream will be line buffered. This option is
invalid with standard input.
If MODE is '0' the corresponding stream will be unbuffered.
Otherwise MODE is a number which may be followed by one of the following: KB
1000, K 1024, MB 1000*1000, M 1024*1024, and so on for G, T, P, E, Z, Y. In
this case the corresponding stream will be fully buffered with the buffer size
set to MODE bytes.
NOTE: If COMMAND adjusts the buffering of its standard streams ('tee' does for
e.g.) then that will override corresponding settings changed by 'stdbuf'. Also
some filters (like 'dd' and 'cat' etc.) don't use streams for I/O, and are
thus unaffected by 'stdbuf' settings.
tail -f access.log | stdbuf -oL cut -d ' ' -f1 | uniq
This will immedidately display unique entries from access.log
On GLIBC platforms, specifying a buffer size, i.e. using fully buffered mode
will result in undefined operation.
Written by Padraig Brady.
GNU coreutils online help: <http://www.gnu.org/software/coreutils/
Report stdbuf translation bugs to <http://translationproject.org/team/
Copyright © 2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL
version 3 or later <http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it. There is NO
WARRANTY, to the extent permitted by law.
Full documentation at: <http://www.gnu.org/software/coreutils/stdbuf
or available locally via: info '(coreutils) stdbuf invocation'