Linux實時查看日志的四種命令詳解


如何在Linux中實時查看日志文件的內容?那么有很多實用程序可以幫助用戶在文件更改或不斷更新時輸出文件的內容。在Linux中實時顯示文件內容的常用命令是tail命令(有效地管理文件)。
1. tail命令 - 實時監控日志

如上所述,tail命令是實時顯示日志文件的最常用解決方案。但是,顯示該文件的命令有兩個版本,如下面的示例所示。

在第一個示例中,命令tail需要-f參數來跟蹤文件的內容。

$ sudo tail -f /var/log/apache2/access.log


 

 

 



實時監控Apache日志

該命令的第二個版本實際上是一個命令本身:tailf。你不需要使用該-f開關,因為該命令是與-f參數一起內置的。

$ sudo tailf /var/log/apache2/access.log

 

 

實時Apache日志監控


通常,logrotate實用程序會在Linux服務器上頻繁地輪換日志文件。要查看每日基礎上輪換的日志文件,可以使用tail -F命令。

tail -F將跟蹤正在創建的新日志文件,並開始跟蹤新文件而不是舊文件。

$ sudo tail -F /var/log/apache2/access.log

 

 

 

但是,默認情況下,tail命令將顯示文件的最后10行。例如,如果你只想實時查看日志文件的最后兩行,請使用-n與該-f標志結合的文件,如下例所示。

$ sudo tail -n2 -f /var/log/apache2/access.log

查看最后兩行日志

2.multitail命令 - 實時監控多個日志文件

另一個有趣的實時顯示日志文件的命令是multitail命令。該命令的名稱意味着multitail實用程序可以實時監視和跟蹤多個文件。Multitail還允許你在受監視的文件中來回導航。

要在基於Debian和RedHat的系統中安裝mulitail實用程序,請發出以下命令。

$ sudo apt install multitail [On Debian&Ubuntu]

$ sudo yum install multitail [On RedHat&CentOS]

$ sudo dnf install multitail [On Fedora 22+ version]


要同時顯示兩個日志文件的輸出,請執行以下示例中所示的命令。

$ sudo multitail /var/log/apache2/access.log /var/log/apache2/error.log

 

 

多點監控日志

3. lnav命令 - 實時監控多個日志文件

另一個有趣的命令,類似於multitail命令,是lnav命令。Lnav實用程序還可以觀看和跟蹤多個文件並實時顯示其內容。

通過發出以下命令在基於Debian和RedHat的Linux發行版中安裝lnav實用程序。

$ sudo apt install lnav [On Debian&Ubuntu]

$ sudo yum install lnav [On RedHat&CentOS]

$ sudo dnf install lnav [On Fedora 22+ version]

通過發出命令同時觀察兩個日志文件的內容,如下例所示。

$ sudo lnav /var/log/apache2/access.log /var/log/apache2/error.log

 

lnav - 實時日志監控


4. less命令 - 顯示日志文件的實時輸出

最后,如果鍵入,則可以使用less命令顯示文件的實時輸出Shift+F。

與tail實用程序一樣,Shift+F在打開的文件中按下less將在文件結束后開始。或者,你也可以用較少的+F旗幟開始進入現場觀看文件。

$ sudo less + F /var/log/apache2/access.log

 

 使用less命令監視日志





免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM