首頁 > linux教程 > Linux文本處理(Linux三劍客) 閱讀:0更新時間:2020-03-28 00:57:05

Linux tail命令:顯示文件結尾的內容

tail 命令和 head 命令正好相反,它用來查看文件末尾的數據,其基本格式如下:

[root@localhost ~]# tail [選項] 文件名

此命令常用的選項及含義如表 1 所示。

表 1 tail 命令選項及含義
選項 含義
-n K 這里的 K 指的是行數,該選項表示輸出最后 K 行,在此基礎上,如果使用 -n +K,則表示從文件的第 K 行開始輸出。
-c K 這里的 K 指的是字節數,該選項表示輸出文件最后 K 個字節的內容,在此基礎上,使用 -c +K 則表示從文件第 K 個字節開始輸出。
-f 輸出文件變化后新增加的數據。

【例 1】查看 /etc/passwd 文件最后 3 行的數據內容。

[root@localhost ~]# tail -n 3 /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
oprofile:x:16:16:Special user account to be used by OProfile:/var/lib/oprofile:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin

除此之外,還可以采用如下這種形式:

[root@localhost ~]# tail -3 /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
oprofile:x:16:16:Special user account to be used by OProfile:/var/lib/oprofile:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin

可以看到,使用 tail -n 3 /etc/passwd 命令和 tail -3 /etc/passwd 的效果是一樣的。

【例 2】查看 /etc/passwd 文件末尾 100 個字節的數據內容。

[root@localhost ~]# tail -c 100 /etc/passwd
cpdump:x:72:72::/:/sbin/nologin


【例 3】 監聽文件的新増內容。tail 命令有一種比較有趣的用法,可以使用 "-f" 選項來監聽文件的新増內容,例如:

[root@localhost ~]#tail -f anaconda-ks.cfg
@server-platform
@server-policy
pax
oddjob
sgpio
certmonger
pam_krb5
krb5-workstation
perl-DBD-SQLite
%end
#光標不會退出文件,而會一直監聽在文件的結尾處

這條命令會顯示文件的最后 10 行內容,而且光標不會退出命令,每隔一秒會檢查一下文件是否增加新的內容,如果增加就追加到原來的輸出結果后面并顯示。因此,這時如果向文件中追加一些數據(需要開啟一個新終端):

[root@localhost ~]# echo 2222222222 >> anaconda-ks.cfg
[root@localhost ~]# echo 3333333333 >> anaconda-ks.cfg
#在新終端中通過echo命令向文件中追加數據

那么,在原始的正在監聽的終端中,會看到如下信息:

[root@localhost ~]# tail -f anaconda-ks.cfg @server-platforin
@server-policy
pax
oddjob
sgpio
certmonger
pam_krb5
krb5-workstation
perl-DBD-SQLite
%end2222222222
33333333333
#在文件的結尾處監聽到了新増數據

如果想終止輸出,按【Ctrl+c】鍵中斷 tail 命令即可。

beylze編程學院,一個分享編程知識和seo優化知識的網站。跟著beylze一起學習,每天都有進步。

通俗易懂,深入淺出,一篇文章只講一個知識點。

文章不深奧,不需要鉆研,在公交、在地鐵、在廁所都可以閱讀,隨時隨地漲姿勢。

文章不涉及代碼,不燒腦細胞,人人都可以學習。

當你決定關注beylze(公眾號:beylze),你已然超越了90%的其他從業者!

相關文章

優秀教程

国产亚洲欧美日韩