TailコマンドでLinuxでファイルの終わりを表示する方法

Linuxには、ファイルの一部を見るための非常に便利なコマンドが2つあります。 最初はheadと呼ばれ、デフォルトではファイルの最初の10行が表示されます。 2番目はtailコマンドで、デフォルトではファイル内の最後の10行を表示することができます。

なぜこれらのコマンドのどちらかを使いたいのですか? catコマンドを使用しファイル全体を表示したり、 nanoなどのエディタを使用したりするのはなぜですか?

読んでいるファイルに30万行があるとします。

ファイルが大量のディスク領域を消費することも想像してください。

headコマンドの一般的な使い方は、表示するファイルが実際に正しいファイルであることを確認することです。 あなたは通常、最初の数行を見るだけで、正しいファイルを見ているかどうかを知ることができます。 次に、nanoなどのエディタを使用してファイルを編集することができます。

tailコマンドは、ファイルの最後の数行を表示するのに便利で、/ var / logフォルダに保存されているログファイルで何が起こっているのかを確認したいときには非常に便利です。

このガイドでは、利用可能なすべてのスイッチを含むtailコマンドの使用方法について説明します。

テールコマンドの使用例

以前に述べたように、tailコマンドはファイルの最後の10行を表示します。

tailコマンドの構文は次のとおりです。

tail <ファイル名>

たとえば、システムのブートログを表示するには、次のコマンドを使用します。

sudo tail /var/log/boot.log

出力は次のようになります。

*起動時に残りのブート時に暗号化されたブロックデバイスを有効にする[OK]
*保存udevログの起動とルールの更新[OK]
* save udevのログを停止してルールを更新する[OK]
*スピーチディスパッチャーは無効になっています。 / etc / default / speech-dispatcherを編集する
*仮想マシンではなく、VirtualBoxの追加機能を無効にする
saned disabled; / etc / default / sanedを編集する
*リゾルバ状態の復元... [OK]
*システムVランレベルの互換性を停止する[OK]
* MDMディスプレイマネージャの起動[OK]
*停止プリマスがアップしていることを示すイベントを送信する[OK]

表示する行数を指定する方法

たぶん、ファイルの最後の10行以上を見たいかもしれません。 次のコマンドを使用して、表示する行数を指定できます。

sudo tail -n20 <ファイル名>

上記の例では、ファイルの最後の20行が表示されます。

代わりに、-nスイッチを使用してファイル内の開始点を指定することもできます。 おそらくファイルの最初の30行はコメントで、ファイル内のデータを見たいと思うかもしれません。 この場合、次のコマンドを使用します。

sudo tail -n + 20 <ファイル名>

tailコマンドはmoreコマンドと一緒に使用されることが多いので、一度に1ページずつファイルを読むことができます。

例えば:

sudo tail -n + 20 <ファイル名> | もっと

上記のコマンドはfilenameから最後の20行を送り、それをmoreコマンドの入力としてパイプします:

tailコマンドを使用して、行ではなく特定のバイト数を表示することもできます。

sudo tail -c20 <ファイル名>

同じスイッチを使用して、次のように特定のバイト番号からの表示を開始することもできます。

sudo tail -c + 20 <ファイル名>

ログファイルを監視する方法

画面には出力されませんが、実行中にログファイルに追加されるスクリプトやプログラムはたくさんあります。

この場合、変更されたログファイルを監視する必要があります。

次のtailコマンドを使用して、何秒ごとにログがどのように変化するかを調べることができます。

sudo tail -F -s20 <ファイル名>

プロセスが次のように終了するまで、tailを使用してログの監視を続けることもできます。

sudo tail -F --pid = 1234 <ファイル名>

プロセスのプロセスIDを見つけるには、次のコマンドを使用します。

ps -ef | grep <プログラム名>

たとえば、nanoを使用してファイルを編集しているとします。 次のコマンドを使用してnanoのプロセスIDを見つけることができます。

ps -ef | grep nano

コマンドの出力からプロセスIDが得られます。 プロセスIDが1234であるとします。

次のコマンドを使用して、nanoによって編集中のファイルに対してtailを実行できるようになりました。

sudo tail -F --pid = 1234 <ファイル名>

ファイルがnano内に保存されるたびに、tailコマンドは新しい行を一番下に表示します。 このコマンドは、ナノエディタが閉じられると停止します。

テールコマンドを再試行する方法

何らかの理由でアクセスできないためにtailコマンドを実行しようとしてエラーが発生した場合は、retryパラメーターを使用して、ファイルが使用可能になるまで再試行を続けることができます。

sudo tail --retry -F <ファイル名>

これは実際には、ファイルを再試行する必要があるため、-Fスイッチと組み合わせてのみ機能します。

概要

このガイドでは、tailコマンドのより一般的な使い方を示します。

tailコマンドの詳細については、次のコマンドを使用してください。

男子テール

ほとんどのコマンドにsudoが含まれていることに気づくでしょう。 これは、通常のユーザーとしてファイルを表示する権限がなく、昇格されたアクセス許可が必要な場合にのみ必要です。