Linuxコマンド辞典 stdbufコマンド(プロセス管理)
標準入出力のバッファ動作を変更してコマンドを実行する「stdbuf」コマンドの概要と使い方を記載しています。
RHEL Fedora CentOS Vine Deblan Ubuntu Plamo
参考サイト:Man page of INSTALL
概要・使用方法
標準入出力のバッファ動作を変更してコマンドを実行します。デフォルトの状態で標準入出力は、ある程度データをためてまとまった単位で表示などの動作を行うバッファ動作をしています。そのためファイルへの書き出しや表示が遅くなることがあります。stdbufはこれをバッファしないですぐに書き出ししたり、バッファサイズを増やして一括して書き出すように調整することができます。
書式
$ stdbuf オプション コマンド
オプション
-i モード –input=モード | 標準入力のバッファを変更する |
-o モード –output=モード | 標準出力のバッファを変更する |
-e –error=モード | 標準委エラー出力のバッファを変更する |
モード
以下のモードが指定可能です。
モード | 説明 |
---|---|
L | 行単位でバッファする |
0 | バッファしない |
KB | 1000倍と単位でバッファする |
K | 1024バイト単位でバッファする |
MB | 1000*1000バイト単位でバッファする |
M | 1024*1024バイト単位でバッファする |
1行単位でバッファ出力する
httpdのアクセスログから接続元だけラインバッファで出力
実行結果
[root@localhost suna]# tail -f /var/log/httpd/access_log | stdbuf -o L cut -d ' ' -f1
192.168.0.23
192.168.0.23
192.168.0.23
192.168.0.23
192.168.0.23
192.168.0.23
192.168.0.23
192.168.0.23
192.168.0.23
192.168.0.23