#Bash 的 stdbuf 命令
stdbuf OPTION... COMMAND
功能
使用指定的缓冲模式运行命令。
类型
可执行文件(/usr/bin/stdbuf),属于 coreutils。
参数
OPTION选项:-i,--input=MODE- 指定标准输入的缓冲模式-o,--output=MODE- 指定标准输出的缓冲模式-e,--error=MODE- 指定标准错误的缓冲模式--help- 显示帮助--version- 显示版本
COMMAND- 要执行的命令
#缓冲模式
0- 无缓冲L- 行缓冲(不能用于标准输入)N-N字节的全缓冲,支持K(1024)、KB(1000)等后缀
#示例
$ stdbuf -o 0 cat /vat/log/xxx.log # 使用无缓冲运行命令
#推荐阅读
#手册
STDBUF(1) User Commands STDBUF(1) NAME stdbuf - Run COMMAND, with modified buffering operations for its stan‐ dard streams. SYNOPSIS stdbuf OPTION... COMMAND DESCRIPTION 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 --help display this help and exit --version 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 follow‐ ing: KB 1000, K 1024, MB 1000*1000, M 1024*1024, and so on for G,T,P,E,Z,Y,R,Q. Binary prefixes can be used, too: KiB=K, MiB=M, and so on. 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 example) then that will override corresponding changes by 'stdbuf'. Also some filters (like 'dd' and 'cat' etc.) don't use streams for I/O, and are thus unaffected by 'stdbuf' settings. Exit status: 125 if the stdbuf command itself fails 126 if COMMAND is found but cannot be invoked 127 if COMMAND cannot be found - the exit status of COMMAND otherwise EXAMPLES tail -f access.log | stdbuf -oL cut -d ' ' -f1 | uniq This will immediately display unique entries from access.log BUGS On GLIBC platforms, specifying a buffer size, i.e., using fully buffered mode will result in undefined operation. AUTHOR Written by Padraig Brady. REPORTING BUGS GNU coreutils online help: <https://www.gnu.org/software/coreutils/> Report any translation bugs to <https://translationproject.org/team/> COPYRIGHT Copyright © 2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://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. SEE ALSO Full documentation <https://www.gnu.org/software/coreutils/stdbuf> or available locally via: info '(coreutils) stdbuf invocation' GNU coreutils 9.4 April 2024 STDBUF(1)