Linux tail 命令詳解

-f ==>follow 顯示後續的數據apache

具體:less

Linux命令:顯示文件結尾curl

  Head/Tailui

  head 與 tail 就像它的名字同樣的淺顯易懂,它是用來顯示開頭或結尾某個數量的文字區塊,head 用來顯示檔案的開頭至標準輸出中,而 tail 想固然就是看檔案的結尾,看看下面的範例:url

(1)

  displays the first 6 lines of a filespa

  head -6 readme.txt.net

  (2) displays the last 25 lines of a fileunix

  tail -25 mail.txt日誌

  範例一是顯示檔案的前 6 行,範例二則是顯示檔案最後的 25 行。server

  而下面的範別,結合了 head 與 tail 的指令,顯示檔案的第 11 行到第 20 行:

(3)

  head -20 file | tail -10

   在 tail 的使用手冊頁中顯示了比 head 還多的可用參數,其中有一個很好用的參數 " -f ",使用此參數時,tail 不會回傳結束信號,除非咱們去自行去中斷它;相反的,它會一直等待一段時間,一直到他發現資料自它最後一次被讀取後,又被加入新的一行時:

(4)

  display ongoing updates to the given

  log file

  tail -f /usr/tmp/logs/daemon_log.txt

  上述範例能夠動態顯示該 log 文件的動態更新。

  假設該服務程序是一直不斷的加入動態資料到/usr/adm/logs/daemon_log.txt 的 log 文件裏,在命令列控制窗口中使用 tail -f,它將會以必定的時間實時追蹤該檔的全部更新。 ( -f 的只有在其輸入爲檔案時才能使用 )。

  假如你在 tail 後下了多個檔案參數,你便能在同一個窗口內一次追蹤數個 log 檔:

  track the mail log and the server error log

  at the same time.

  tail -f /var/log/mail.log /var/log/apache/error_log

  tac -- 反過來串連

   cat 倒過來怎麼拼  對啦 !! 這就是 tac 的功能囉 ~ 它是把檔案的順序內容反過來串連用的,那麼 ~ 它都用在什麼情況下呢 ? 任何必要之後進先出的順序從新排列組件的工做都用得上它 ! 如下面的指令來講,即是以自最後創建的到最早創建的順序,列出三個最新建的使用者賬號:

(5)

  last 3 /etc/passwd records - in reverse

  $ tail -3 /etc/passwd | tac

  curly:x:1003:100:3rd Stooge:/homes/curly:/bin/ksh

  larry:x:1002:100:2nd Stooge:/homes/larry:/bin/ksh

  moe:x:1001:100:1st Stooge:/homes/moe:/bin/ksh

 

查看文件內容的特殊方法
  相信最基本的cat和less,more你已經很熟悉了,若是有特殊的要求呢:
1. 若是你只想看文件的前5行,可使用head命令,如:
head -5 /etc/passwd
2. 若是你想查看文件的後10行,可使用tail命令,如:
tail -10 /etc/passwd
tail -f /var/log/messages
參數-f使tail不停地去讀最新的內容,這樣有實時監視的效果

1、UNIX下的TAIL命令

說明:部份內容摘錄自"永遠的UNIX",http://fanqiang.chinaunix.net/

NAME(名稱)

tail - 輸出文件的末尾部分

SYNOPSIS(總覽)

../src/tail [OPTION]... [FILE]...

DESCRIPTION(描述)

在標準輸出上顯示每一個FILE的最後10行. 若是多於一個FILE,會一個接一個地顯示, 並在每一個文件顯示的首部給出文件名. 若是沒有FILE,或者FILE是-,那麼就從標準輸入上讀取.

--retry
即便tail開始時就不能訪問或者在tail運行後不能訪問,也仍然不停地嘗試打開文件.  -- 只與 -f合用時有用.
-c--bytes= N
輸出最後N個字節
-f--follow[={name|descriptor}]
當文件增加時,輸出後續添加的數據;  -f--follow以及  --follow= descriptor 都是相同的意思
-n--lines= N
輸出最後N行,而非默認的最後10行
--max-unchanged-stats= N
參看texinfo文檔(默認爲5)
--max-consecutive-size-changes= N
參看texinfo文檔(默認爲200)
--pid= PID
-f合用,表示在進程ID,PID死掉以後結束.
-q--quiet--silent
從不輸出給出文件名的首部
-s--sleep-interval= S
-f合用,表示在每次反覆的間隔休眠S秒
-v--verbose
老是輸出給出文件名的首部
--help
顯示幫助信息後退出
--version
輸出版本信息後退出

若是N(字節或者行數)的第一個字符爲`+', 那麼從每一個文件的開頭算起的第N項開始顯示, 不然, 顯示該文件的最後N項. N能夠有一個倍數前綴: b表示512,k表示1024,m表示1048576(1兆). 第一個選項 -VALUE 或+VALUE 以-n VALUE或-n +VALUE 方式看待,除非VALUE含有[bkm]後綴倍數中的一個,在這種狀況下,它被看做 -c VALUE 或者-c +VALUE

使用--follow (-f)時,tail默認後接文件描述符, 這意味着即便tail顯示的文件更名了,tail仍然能夠追蹤到其末尾部分. 若是你確實但願查詢文件的實際名而非文件描述符 (例如,日誌輪轉時), 這種默認的操做就不是你所指望的了. 在這種狀況下應使用--follow=name. 這將致使tail經過週期性地從新打開所指定的文件來追蹤其是否被刪除了,或者被其餘程序從新建立了.

        tail 的完整文檔是以Texinfo手冊形式維護的. 若是 info 和 tail 程序在你那兒都已經安裝好了,那麼命令:info tail 應該會讓你訪問到整篇手冊.

       從上面的說明能夠看到,最經常使用的形式是:tail   -f   sys.log

相關文章
相關標籤/搜索