tail --follow = name(-F)のような機能はありません


41

このコマンドlessを使用してtail

tail -f file

バイナリ出力の処理やスクロールバックのナビゲートなどの機能を提供するには:

less +F file

+接頭手段は、「私は、起動後にそのタイプふり」、およびキーF開始し、次の。

しかしless、置き換えることもできます

tail --follow=name file

file移動したログファイルのように、実際のファイルが削除または移動された場合でも、次のようfile.log.1になります。その後、後続のファイルと同じ名前の新しいファイルが作成されます。


1
less --follow-nameまたは試すことができますless --follow-name +F
don_crissti

@don_crisstiニース... less --follow-name +Fそれは-どうしてそれを見逃したのかわからない- follow奇妙なことに...のマニュアルページを検索したと確信していた。それに答えてください!
フォルカーシーゲル

さて、さらに検索すると、すでにここで質問と回答が行われていることがわかりますので、コメントとして残します。そこでいつでも答えを投票できます。
don_crissti

@don_crisstiそうです...あなたの正しい答えがそこに見つからないことを除いて- --follow-name説明されています+Fが、決して言及されておらず、明らかに広く知られていないため、それは非常に重要だと思います。
フォルカーシーゲル

Googleの検索のためにここに来た場合は、less follow質問を読んでください。既にlessファイルの変更に従う方法に答えています!
ヒューバート・グジェスコヴィアック

回答:


40

はい、lessファイル名で追跡できます

この機能の構文はかなり曖昧です:

less --follow-name +F file.log

少ないと--follow-nametailオプションとは異なります--follow=name
これは、ことはありませんless、代わりに、ファイルに従って行動修正コマンドキーのFファイル名ではなく、ファイルディスクリプタに基づいて従うことが少ないの内部を。

また、lessフォローモードで開始する通常のオプションはありません。
ただし、コマンドラインを使用して、先頭にを付けることで、起動後に実行するキーストロークを与えることができます+
修飾子オプションとを組み合わせると+Fless実際には(変更された)フォローモードで開始されます。

+Fplainと同等のものを単独で使用しますtail -f

less +F file.log

tail -fとは異なり、使用されるメモリの量はターミナルスクロールバック制限によって制限されないため(ターミナルスクロールバック制限も無限でない限り)、これより少ない無限ストリームをたどると、最終的にメモリを使い果たすと思われます。less + Fはスクロールバック履歴全体を保存する必要があり、ハードディスク上のファイルからのスライスの再読み込みに依存することはできません。
CMCDragonkai

@CMCDragonkai興味深い点。lessファイルごとに使用されるバッファサイズを制御するオプションがあり(-bおよび-B)、サイズがデフォルトで制限されているかどうかはわかりません。
フォルカーシーゲル

のマニュアルページに-Bは、「デフォルトでは、パイプからデータが読み込まれると、必要に応じてバッファが自動的に割り当てられます。パイプから大量のデータが読み込まれると、大量のメモリが割り当てられます。 -Bオプションはこのパイプのバッファーの自動割り当てを無効にするため、64 K(または-bオプションで指定されたスペースの量)のみがパイプに使用されます。つまり、無限パイプから読み取る場合、デフォルトで無限メモリが割り当てられますが、ログファイルなどのファイルから読み取る場合、デフォルトで64 Kスライスが使用されます。
CMCDragonkai

4

Fedoraでは、少なくともtail -fのようにファイルの内容を追跡する+ Fオプションがありません。

更新して、Fを少し押してフォローモードに切り替えてみてください


本気ですか?私のlessには同じ名前の競合するオプション-Fがあります:lessのmanページには:が書かれています-F or --quit-if-one-screen。どのバージョンがlessありますか?私はless 458オプションで言い ます-V
フォルカーシーゲル


非常に興味深い、リンクをありがとう!それは、gnuが少ないわけではないようです。の最初の完全な行はless -Vですless 458 (GNU regular expressions)。あなたのバージョンを教えてください。
フォルカーシーゲル

はい、私は確信していますが、先に進んで私に投票してください。stackexchangeは愛を共有する必要があります
-user1529413

1
ただ、あなたが私にあなたを下票したと思ったことを確かにするために:いいえ、私はあなたを支持しました。
フォルカーシーゲル
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.