Linux系統(tǒng)中tail命令的參數(shù)及用法詳解
Linux系統(tǒng)中tail命令是一個文本查看命令,顯示文本的尾部內容。下面由學習啦小編為大家整理了Linux系統(tǒng)中tail命令的參數(shù)及用法詳解的相關知識,希望對大家有幫助!
Linux系統(tǒng)中tail命令的參數(shù)及用法詳解:參數(shù)說明
tail語法格式:
tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]
或者
tail [ -r ] [ -n Number ] [ File ]
使用說明:
tail 命令從指定點開始將 File 參數(shù)指定的文件寫到標準輸出。如果沒有指定文件,則會使用標準輸入。 Number 變量指定將多少單元寫入標準輸出。 Number 變量的值可以是正的或負的整數(shù)。如果值的前面有 +(加號),從文件開頭指定的單元數(shù)開始將文件寫到標準輸出。如果值的前面有 -(減號),則從文件末尾指定的單元數(shù)開始將文件寫到標準輸出。如果值前面沒有 +(加號)或 -(減號),那么從文件末尾指定的單元號開始讀取文件。
主要參數(shù):
-b Number 從 Number 變量表示的 512 字節(jié)塊位置開始讀取指定文件。
-c Number 從 Number 變量表示的字節(jié)位置開始讀取指定文件。
-f 如果輸入文件是常規(guī)文件或如果 File 參數(shù)指定 FIFO(先進先出),那么 tail 命令不會在復制了輸入文件的最后的指定單元后終止,而是繼續(xù)從輸入文件讀取和復制額外的單元(當這些單元可用時)。如果沒有指定 File 參數(shù),并且標準輸入是管道,則會忽略 -f 標志。tail -f 命令可用于監(jiān)視另一個進程正在寫入的文件的增長。
-k Number 從 Number 變量表示的1KB 塊位置開始讀取指定文件。
-m Number 從 Number 變量表示的多字節(jié)字符位置開始讀取指定文件。使用該標志提供在單字節(jié)和雙字節(jié)字符代碼集環(huán)境中的一致結果。
-n Number 從首行或末行位置來讀取指定文件,位置由 Number 變量的符號(+ 或 - 或無)表示,并通過行號 Number 進行位移。
-r 從文件末尾以逆序方式顯示輸出。-r 標志的缺省值是以逆序方式顯示整個文件。
如果文件大于 20,480 字節(jié),那么-r標志只顯示最后的 20,480 字節(jié)。 -r 標志只有 與 -n 標志一起時才有效。否則,就會將其忽略。
Linux系統(tǒng)中的tail命令參數(shù)及用法詳解:用法詳解
實例1:顯示文件末尾內容
命令:
tail -n 5 log2014.log
輸出:
代碼如下:
[root@localhost test]# tail -n 5 log2014.log
2014-09
2014-10
2014-11
2014-12
==============================[root@localhost test]#
說明:
顯示文件最后5行內容
實例2:循環(huán)查看文件內容
命令:
tail -f test.log
輸出:
代碼如下:
[root@localhost ~]# ping 192.168.120.204 > test.log &
[1] 11891[root@localhost ~]# tail -f test.log
PING 192.168.120.204 (192.168.120.204) 56(84) bytes of data.
64 bytes from 192.168.120.204: icmp_seq=1 ttl=64 time=0.038 ms
64 bytes from 192.168.120.204: icmp_seq=2 ttl=64 time=0.036 ms
64 bytes from 192.168.120.204: icmp_seq=3 ttl=64 time=0.033 ms
64 bytes from 192.168.120.204: icmp_seq=4 ttl=64 time=0.027 ms
64 bytes from 192.168.120.204: icmp_seq=5 ttl=64 time=0.032 ms
64 bytes from 192.168.120.204: icmp_seq=6 ttl=64 time=0.026 ms
64 bytes from 192.168.120.204: icmp_seq=7 ttl=64 time=0.030 ms
64 bytes from 192.168.120.204: icmp_seq=8 ttl=64 time=0.029 ms
64 bytes from 192.168.120.204: icmp_seq=9 ttl=64 time=0.044 ms
64 bytes from 192.168.120.204: icmp_seq=10 ttl=64 time=0.033 ms
64 bytes from 192.168.120.204: icmp_seq=11 ttl=64 time=0.027 ms
[root@localhost ~]#
說明:
ping 192.168.120.204 > test.log & //在后臺ping遠程主機。并輸出文件到test.log;這種做法也使用于一個以上的檔案監(jiān)視。用Ctrl+c來終止。
實例3:從第5行開始顯示文件
命令:
tail -n +5 log2014.log
輸出:
代碼如下:
[root@localhost test]# cat log2014.log
2014-01
2014-02
2014-03
2014-04
2014-05
2014-06
2014-07
2014-08
2014-09
2014-10
2014-11
2014-12
==============================
[root@localhost test]# tail -n +5 log2014.log
2014-05
2014-06
2014-07
2014-08
2014-09
2014-10
2014-11
2014-12
補充:Linux系統(tǒng)中其它查看文件內容的命令
最基本的是cat、more和less。
1. 如果你只想看文件的前5行,可以使用head命令,如:
head -5 /etc/passwd
2. 如果你想查看文件的后10行,可以使用tail命令,如:
tail -10 /etc/passwd 或 tail -n 10 /etc/passwd
tail -f /var/log/messages
參數(shù)-f使tail不停地去讀最新的內容,這樣有實時監(jiān)視的效果 用Ctrl+c來終止!
3. 查看文件中間一段,你可以使用sed命令,如:
sed -n '5,10p' /etc/passwd
這樣你就可以只查看文件的第5行到第10行。