如何在linux上使用tail命令

Linux tail命令顯示檔案末尾的資料。它甚至可以實時顯示新增到檔案中的更新。我們教你如何使用它。...

Linux tail命令顯示檔案末尾的資料。它甚至可以實時顯示新增到檔案中的更新。我們教你如何使用它。

他殺了尾巴嗎?

tail命令顯示檔案末尾的資料。通常,新資料會新增到檔案的末尾,因此tail命令是檢視檔案中最新新增內容的一種快速簡便的方法。它還可以監視一個檔案,並在出現新的文字條目時顯示該檔案。這使它成為監視日誌檔案的好工具。

許多現代Linux發行版都採用了systemd系統和****器。這是執行的第一個程序,它的程序ID為1,是所有其他程序的父程序。此角色以前由舊的init系統處理。

伴隨著這一變化而來的是一種新的系統日誌檔案格式。在systemd下,它們不再以純文字形式建立,而是以二進位制格式記錄。要讀取這些日誌檔案,必須使用journactl實用程式。tail命令適用於純文字格式。它不讀取二進位制檔案。那麼,這是否意味著tail命令是尋找問題的解決方案呢?它還有什麼可以提供的嗎?

tail命令不僅僅是實時顯示更新。對於這一點,仍然有大量的日誌檔案不是系統生成的,仍然是作為純文字檔案建立的。例如,應用程式生成的日誌檔案沒有更改其格式。

使用尾部

將檔名傳遞給tail,它將顯示該檔案的最後10行。我們使用的示例檔案包含排序單詞的列表。每一行都有編號,因此應該很容易按照示例進行操作,並檢視各種選項的效果。

tail word-list.txt

如何在linux上使用tail命令

要檢視不同的行數,請使用-n(行數)選項:

tail -n 15 word-list.txt

如何在linux上使用tail命令

實際上,您可以省去“-n”,只使用連字元“-”和數字。確保它們之間沒有空格。從技術上講,這是一個過時的命令表單,但它仍然在手冊頁中,並且仍然有效。

tail -12 word-list.txt

如何在linux上使用tail命令

對多個檔案使用tail

你可以同時處理多個檔案。只需在命令列上傳遞檔名:

tail -n 4 list-1.txt list-2.txt list-3.txt

如何在linux上使用tail命令

每個檔案都會顯示一個小的標頭檔案,這樣就可以知道行屬於哪個檔案。

顯示檔案開頭的行

+(從開始計數)修飾符使尾部顯示從檔案開始的行,從特定行號開始。如果您的檔案很長,並且您選擇了靠近檔案開頭的一行,那麼您將得到大量傳送到終端視窗的輸出。如果是這樣的話,將tail的輸出匯入less是有意義的。

tail +440 list-1.txt

如何在linux上使用tail命令

你可以用一種受控的方式翻閱文字。

如何在linux上使用tail命令

由於此檔案中恰好有20445行,因此此命令相當於使用“-6”選項:

tail +20440 list-1.txt

如何在linux上使用tail命令

使用帶尾部的位元組

您可以使用-c(bytes)選項,告訴tail使用位元組而不是行的偏移。如果您有一個文字檔案,它格式化為常規大小的記錄,這可能會很有用。注意,換行字元計數為一個位元組。此命令將顯示檔案中最後93個位元組:

tail -c 93 list-2.txt

如何在linux上使用tail命令

您可以將-c(bytes)選項與+(從檔案開始計數)修飾符結合使用,並以從檔案開始計數的位元組為單位指定偏移量:

tail -c +351053 list-e.txt

如何在linux上使用tail命令

管道進入尾部

早些時候,我們透過管道將tail的輸出傳輸到less。我們還可以將其他命令的輸出透過管道傳輸到tail中。

要標識修改時間最早的五個檔案或資料夾,請使用ls的-t(按修改時間排序)選項,並將輸出匯入tail。

ls -tl | tail -5

如何在linux上使用tail命令

head命令列出檔案開頭的文字行。我們可以將其與tail結合起來提取檔案的一部分。在這裡,我們使用head命令從檔案中提取前200行。這是被輸送到尾巴,這是提取最後十行。這是第191行到第200行。即前200行中的最後10行:

head -n 200 list-1.txt | tail -10

如何在linux上使用tail命令

這個命令列出了五個最需要記憶體的程序。

ps aux | sort -nk +4 | tail -5

如何在linux上使用tail命令

我們把它分解一下。

ps命令顯示有關正在執行的程序的資訊。使用的選項包括:

  • a:列出所有程序,而不僅僅是當前使用者的程序。
  • u:顯示面向使用者的輸出。
  • x:列出所有程序,包括那些沒有在TTY中執行的程序。

sort命令對ps的輸出進行排序。我們用於排序的選項有:

  • n:按數字排序。
  • k+4:在第四列排序。

tail-5命令顯示排序輸出的最後五個程序。這是五個最需要記憶體的程序。

使用tail實時跟蹤檔案

跟蹤新的文字條目到達一個檔案通常是一個日誌檔案很容易與尾巴。在命令列上傳遞檔名並使用-f(follow)選項。

tail -f geek-1.log

如何在linux上使用tail命令

當每個新的日誌條目新增到日誌檔案中時,tail會更新其在終端視窗中的顯示。

如何在linux上使用tail命令

您可以最佳化輸出,使其僅包含具有特定相關性或興趣的行。在這裡,我們使用grep只顯示包含單詞“average”的行:

tail -f geek-1.log | grep average

如何在linux上使用tail命令

要跟蹤對兩個或多個檔案的更改,請在命令列上傳遞檔名:

tail -f -n 5 geek-1.log geek-2.log

如何在linux上使用tail命令

每個條目都帶有一個標題,顯示文字來自哪個檔案。

如何在linux上使用tail命令

每次新條目到達後續檔案時,顯示都會更新。要指定更新週期,請使用-s(sleep period)選項。這告訴tail在檔案檢查之間等待幾秒鐘,在本例中為5秒鐘。

tail -f -s 5 geek-1.log

如何在linux上使用tail命令

誠然,你不能透過看螢幕截圖來判斷,但是檔案的更新每兩秒鐘就發生一次。新的檔案條目每五秒鐘在終端視窗中顯示一次。

如何在linux上使用tail命令

當您跟蹤多個檔案的文字新增時,可以抑制指示文字來自哪個日誌檔案的標頭。使用-q(安靜)選項執行以下操作:

tail -f -q geek-1.log geek-2.log

如何在linux上使用tail命令

檔案的輸出以文字的無縫混合方式顯示。沒有跡象表明每個條目來自哪個日誌檔案。

如何在linux上使用tail命令

尾巴還是有價值的

儘管現在journalctl提供了對系統日誌檔案的訪問,但tail仍然提供了很多功能。尤其是當它與其他命令結合使用時,透過管道進入或離開尾部。

systemd可能已經改變了環境,但是對於符合Unix哲學的傳統實用程式來說,仍然有一個位置,那就是做一件事並且把它做好。

  • 發表於 2021-04-02 17:32
  • 閱讀 ( 39 )
  • 分類:網際網路

你可能感興趣的文章

面向偏執狂的linux作業系統:最安全的選擇是什麼?

... 無論您敏感工作的性質如何,您都將受益於這五種安全的Linux作業系統之一。 ...

  • 發佈於 2021-03-14 19:20
  • 閲讀 ( 42 )

如何在linux上安裝和使用powershell

... 在本文中,我將向您展示如何在Linux上安裝、執行和使用PowerShell! ...

  • 發佈於 2021-03-16 02:34
  • 閲讀 ( 53 )

人們真的用這個嗎?15個奇怪的linux作業系統名稱

...慮到Linux的吉祥物是Tux,這個名字告訴你Gentoo的開發者是如何看待競爭的。 ...

  • 發佈於 2021-03-16 08:51
  • 閲讀 ( 52 )

如何安全匿名地訪問黑暗網路

... 別開玩笑了,如果你想知道如何以安全匿名的方式訪問黑暗網路,那就繼續閱讀吧。當你想進入黑暗的網路時,你需要採取一些關鍵的步驟。 ...

  • 發佈於 2021-03-18 08:38
  • 閲讀 ( 50 )

如何在windows10上獲得linux bash shell

... 如何在windows10上安裝linux bash shell ...

  • 發佈於 2021-03-21 11:48
  • 閲讀 ( 60 )

最適合您的裝置的黑色網路瀏覽器

當你想訪問黑暗的網路時,你需要使用一個知道如何訪問內容的瀏覽器。像Chrome和Safari這樣的瀏覽器是不合適的。 ...

  • 發佈於 2021-03-22 00:04
  • 閲讀 ( 61 )

linux下如何重新命名檔案

要在Linux中重新命名檔案嗎?如果您知道如何在Windows、macOS或Chrome作業系統中完成這項工作,那麼您就知道如何在這裡完成這項工作。在大多數版本的Linux上,您只需右鍵單擊一個檔案並選擇Rename選項。 ...

  • 發佈於 2021-03-22 02:48
  • 閲讀 ( 65 )

如何在linux中新增使用者

想在Linux系統上新增使用者但不知道如何新增?在Linux上使用命令列介面管理使用者無疑是一項複雜的工作。而對於初學者來說,即使新增新使用者也是一場噩夢。 ...

  • 發佈於 2021-03-26 23:29
  • 閲讀 ( 67 )

如何在linux上使用history命令

...複您過去執行的命令。一旦您瞭解了Linux history命令以及如何使用它,它就可以顯著地提高您的生產效率。 操縱歷史 正如喬治桑塔亞納(georgestantayana)的一句名言:“那些記不住過去的人註定要重蹈覆轍。”不幸的是,在Linux...

  • 發佈於 2021-04-02 18:17
  • 閲讀 ( 51 )

如何在linux上使用dmesg命令

...和術語。按less中的正斜槓“/”鍵啟動搜尋功能。 相關:如何在Linux上使用less命令 不再需要sudo 如果希望避免每次使用dmesg時都必須使用sudo,可以使用以下命令。但是,請注意:它允許任何擁有您的計算機使用者帳戶的人使用dme...

  • 發佈於 2021-04-02 21:09
  • 閲讀 ( 58 )
9102051
9102051

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦