當你想同時檢視多個檔案(尤其是紀錄檔檔案)的活動時,multitail
命令會非常有用。它的工作方式類似於多視窗形式的 tail -f
命令。也就是說,它顯示這些檔案的底部和新增的新行。雖然通常使用簡單,但是 multitail
提供了一些命令列和互動式選項,在開始使用它之前,你應該了解它們。
multitail
的最簡單用法是在命令列中列出你要檢視的檔名稱。此命令水平分割螢幕(即頂部和底部),並顯示每個檔案的底部以及更新。
$ multitail /var/log/syslog /var/log/dmesg
顯示內容將像這樣拆分:
+-----------------------+| || |+-----------------------|| || |+-----------------------+
每個檔案都有一行顯示該檔案的檔案編號(從 00 開始)、檔名、檔案大小、最新內容的新增日期和時間。每個檔案將被分配一半空間,而不論它的大小和活動情況。比如:
content lines from my1.logmore contentmore lines00] my1.log 59KB - 2019/10/14 12:12:09content lines from my2.logmore contentmore lines01] my2.log 120KB - 2019/10/14 14:22:29
請注意,如果你要求 multitail
顯示非文字檔案或者你無權檢視的檔案,它不會報錯。你只是看不到內容。
你還可以使用萬用字元指定要檢視的檔案:
$ multitail my*.log
要記住的一件事是,multitail
將平均分割螢幕。如果指定的檔案太多,那麼除非你採取額外的步驟檢視之後的檔案(參考下面的捲動選項),否則你將只會看到前面 7 個檔案的前面幾行。確切的結果取決於終端視窗中有多少行可用。
按 q
退出 multitail
並返回到正常的螢幕檢視。
如果你願意,multitail
也可以垂直分割你的終端視窗(即,左和右)。為此,請使用 -s
選項。如果指定了三個檔案,那麼螢幕右側的視窗將會水平分隔。四個檔案的話,你將擁有四個大小相等的視窗。
+-----------+-----------+ +-----------+-----------+ +-----------+-----------+| | | | | | | | || | | | | | | | || | | | +-----------+ +-----------+-----------+| | | | | | | | || | | | | | | | |+-----------+-----------+ +-----------+-----------+ +-----------+-----------+ 2 個檔案 3 個檔案 4 個檔案
如果要將螢幕分為三列,請使用 multitail -s 3 file1 file2 file3
。
+-------+-------+-------+| | | || | | || | | || | | || | | |+-------+-------+-------+ 3 個檔案帶上 -s 3 選項
你可以上下捲動檔案,但是需要按下 b
彈出選擇選單,然後使用向上和向下箭頭按鈕選擇要捲動瀏覽的檔案。然後按下確認鍵。然後,你可以再次使用向上和向下箭頭在放大的區域中捲動瀏覽各行。完成後按下 q
返回正常檢視。
在 multitail
中按下 h
將開啟一個幫助選單,其中描述了一些基本操作,但是手冊頁提供了更多資訊,如果莫想了解更多有關使用此工具的資訊,請仔細閱讀。
預設情況下,你的系統上不會安裝 multitail
,但是使用 apt-get
或 yum
可以使你輕鬆安裝。該工具提供了許多功能,不過它是基於字元顯示的,視窗邊框只是 q
和 x
的字串組成的。當你需要關注檔案更新時,它非常方便。