`tail -f`は`less + F`よりも効率的ですか?

`tail -f`は`less + F`よりも効率的ですか?

この記事less +Foverを使用するいくつかの理由が指摘されていますtail -f。ほとんどの理由は以下に関連しています。特徴、いいえ人為的な理由:less +Fファイルを強調表示、検索、参照できます。

どうですか?人為的な理由?

AFAIK、less毎秒ポーリングはファイルを更新するために使用されますがtailPOSIXの定義1秒間休止し、使用可能なすべてのバイトをコピーするループを使用します。これで十分ですが、POSIXは実装時により効率的な方法を使用することをお勧めします。少なくともGNUテール使用inotifyだから、より効率的です。

lessまた、ファイルの内容はメモリに保持されるため、大容量ファイル(数ギガバイトなど)ではコンピュータの速度が遅くなります。

それでは他の人もいますか?人為的な乱用tail -f理由less +F

ベストアンサー1

私はあなたが主なポイントを扱ったと思います。less +F完全なファイルを読み込み、多くのシステムではファイルのtail -f終わりだけを読み込み、ファイル全体を読み取るシステムでも少なくともファイル全体をメモリに保持しません。これはless +F非常に大きなファイルでは実用的ではありません。ただし、行番号を表示せずにファイルの末尾のみを読み取るようにless -n +Fすることができます。less

内部的にはデータ間に大きなless -n +F違いtail -fがありますtailless

less +Fとの間のもう1つの違いtail -fは、less入力フィルタを呼び出しますが、これは通常ログファイルには影響しません。

サポートされている技術的な違いの1つless +Fは、画面の幅に合わせて線を切り取るオプションを使用できることです-S。これによりtail、長さに関係なく行全体を表示するしかありません。

インターフェイスの観点から何が起こるのかを知るために使用すると便利ですless。  tail -fバックグラウンドで実行することもできます。何かが起こってファイルをより詳細に見るには、less他の端末でそのファイルを開くことができます。

複数のファイルを視聴したい場合は、マルチテール行く道です。単一ファイルの場合でも、マルチテールにはフィルタリングやカラーリングなどの追加のクールな機能があります。

おすすめ記事