我的日常

登录/注册
您现在的位置:论坛 盖世程序员(我猜到了开头 却没有猜到结局) 盖世程序员 > tail -f 命令详解
总共48086条微博

动态微博

查看: 1818|回复: 0

tail -f 命令详解

[复制链接]

279

主题

41

听众

689

金钱

版主

该用户从未签到

跳转到指定楼层
楼主
发表于 2014-09-09 10:44:39 |只看该作者 |倒序浏览
1IT币

用途

从指定点开始将文件写到标准输出。使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容。

* v& }# @/ K6 f0 `
6 `* d5 u  @% I' S1 f9 `

语法

标准语法

tail [  -f ] [  -c Number |  -n Number |  -m Number |  -b Number |  -k Number ] [ File ]


) {; C! T3 s# H" ]' c' Z4 Z4 P: V. d. Y; B4 R

要以逆序显示行

tail [  -r ] [  -n Number ] [ File ]


, A' V6 k6 b0 p) m( W  S  {! g0 A- b' v/ i

描述

tail 命令从指定点开始将File 参数指定的文件写到标准输出。如果没有指定文件,则会使用标准输入。Number 变量指定将多少单元写入标准输出。Number 变量的值可以是正的或负的整数。如果值的前面有+(加号),从文件开头指定的单元数开始将文件写到标准输出。如果值的前面有-(减号),则从文件末尾指定的单元数开始将文件写到标准输出。如果值前面没有+(加号)或-(减号),那么从文件末尾指定的单元号开始读取文件。

; k2 z7 }: E# o" q: T! z8 p( x; D5 U- C

% u$ ~( O9 k& j' F% `0 R4 A9 g

Number 变量用于确定计数的起点的单元类型由-b、-c、-k、-m 以及-n 标志确定。如果没有指定其中的任何一个标志,那么tail 命令就会读取指定文件的最后十行,并将其写到标准输出。这与在命令行输入-n 10 是相同的。


3 L! z# |# @1 ^  Q& U9 V9 Y* M" m* _. s8 |0 m2 W9 H

-m 标志在单字节和双字节字符环境中提供了一致的结果。当输入是包含多字节字符的文本文件时应谨慎使用-c 标志,因为产生的输出可能不从字符边界开始。

, ?) B" v* ?6 I$ f1 K( u
& \8 a, b) R3 n3 P0 H4 n' }

标志

6 o# E1 c' ]$ P! A3 [* f  `3 F  h" C

-b Number

从Number 变量表示的512 字节块位置开始读取指定文件。

1 O' Z+ K6 A0 V$ u% p5 ]( j4 b

-c Number

从Number 变量表示的字节位置开始读取指定文件。

( A3 t; [6 R) X1 m5 V

-f

如果输入文件是常规文件或如果File 参数指定FIFO(先进先出),那么tail 命令不会在复制了输入文件的最后的指定单元后终止,而是继续从输入文件读取和复制额外的单元(当这些单元可用时)。如果没有指定File 参数,并且标准输入是管道,则会忽略-f 标志。tail -f 命令可用于监视另一个进程正在写入的文件的增长。

6 o# K9 b- F/ {  J+ w

-k Number

从Number 变量表示的1KB 块位置开始读取指定文件。

- C$ [5 g; @7 q/ U3 t! q0 d# u  E

-m Number

从Number 变量表示的多字节字符位置开始读取指定文件。使用该标志提供在单字节和双字节字符代码集环境中的一致结果。


8 D  ~" {1 J4 e5 B$ j

-n Number

从Number 变量表示的行位置开始读取指定文件。

( u. K2 w- m0 u8 U: C7 v1 C7 @

-r

从文件末尾以逆序方式显示输出。-r 标志的缺省值是以逆序方式打印整个文件。如果文件大于20,480 字节,那么-r 标志只显示最后的20,480 字节。

' l" i3 ?2 ^& _/ h9 o

-r 标志只有与-n 标志一起时才有效。否则,就会将其忽略。


. i# {+ p* I2 H% z3 h0 _+ W: h
: m+ _; E( R6 d- e( `5 \

退出状态

该命令返回下列的退出值:

' ^) P( t/ [$ [* |7 K! T, `, G
1 d" c% d6 K4 T% r, j3 G

0

成功完成。


& U, F0 W( _: c: b$ K7 U* y

>0

出现错误。


$ t/ Y! X$ Y: K* B1 h# T% G, w% H7 H( d$ f) y8 t' j

示例

要显示notes 文件的最后十行,输入:


" y+ L5 o! I3 S3 L' I! T9 R

tail notes要指定从notes 文件末尾开始读取的行数,输入:

tail  -n 20 notes

要从第200 字节开始,每次显示一页notes 文件,输入:

tail  -c +200 notes | pg

要跟踪文件的增长,输入:

tail  -f accounts

这显示accounts 文件的最后十行。tail 命令继续显示添加到accounts 文件中的行。显示会一直继续,直到您按下Ctrl-C 按键顺序来停止。

文件


# W+ e9 m9 [$ U  Y0 z

/usr/bin/tail

包含tail 命令。


科帮网 1、本主题所有言论和图片纯属会员个人意见,与本社区立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与科帮网享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和科帮网的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、科帮网管理员和版主有权不事先通知发贴者而删除本文


JAVA爱好者①群:JAVA爱好者① JAVA爱好者②群:JAVA爱好者② JAVA爱好者③ : JAVA爱好者③

快速回复
您需要登录后才可以回帖 登录 | 立即注册

   

关闭

站长推荐上一条 /1 下一条

发布主题 快速回复 返回列表 联系我们 官方QQ群 科帮网手机客户端
快速回复 返回顶部 返回列表