
理由はわかりませんが、Macbook Pro で Lion を実行している場合、書き込み中のログ ファイルに対して「tail -f」を発行すると更新が遅くなります。前の会社ではこのコマンドを頻繁に使用していましたが、通常は Linux マシン上で使用していました。更新が遅くなる可能性がある唯一の原因は、出力のバッファリングと、Mac と Linux で更新間隔が異なることです。いくつかのコマンドを試しましたが、すべて stout への書き込みは比較的高速ですが、tail コマンドへの更新は遅くなります。何かアイデアはありますか?
アップデート 私は単に、たくさんの出力を含む Python スクリプトを実行し、vi "> my output.log" ファイルにリダイレクトしています。ほぼリアルタイムで更新が表示されることを期待していますが、そうではないようです。
答え1
システムは、コンソールの前に座っている平均的なユーザーよりもファイルシステムに多くの忍耐を期待しており、出力を端末に送らずにバッファリングしています。また、常にブロックで動作するファイルシステムよりも、端末の方が入力の行を処理するのに適しています。行ごとに結果をフラッシュするとパフォーマンスに影響しますが、これは使用ケースでは問題にならない可能性があります。
バッファリングをオフにするには、スクリプトを実行するpython -u SCRIPT
か、unbuffer
expect パッケージを使用します (Mac では使用できない場合があります)。
答え2
次の URL に記載されている理由が考えられます:https://anto.online/guides/solving-the-tail-inotify-resources-exhausted-error-on-ubuntu/