From 1cfa4a218d349151d6a03ce0f0c1b2fce3ff403a Mon Sep 17 00:00:00 2001 From: Glett <807639713@qq.com> Date: Mon, 23 Nov 2020 17:20:28 +0800 Subject: [PATCH] modify tail command Based on version GNU coreutils 8.22 --- command/tail.md | 45 ++++++++++++++++++++++++++++----------------- 1 file changed, 28 insertions(+), 17 deletions(-) diff --git a/command/tail.md b/command/tail.md index 2c37353222..2470f643c6 100644 --- a/command/tail.md +++ b/command/tail.md @@ -5,30 +5,41 @@ tail ## 补充说明 -**tail命令** 用于输入文件中的尾部内容。tail命令默认在屏幕上显示指定文件的末尾10行。如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。如果没有指定文件或者文件名为“-”,则读取标准输入。 - -注意:如果表示字节或行数的N值之前有一个”+”号,则从文件开头的第N项开始显示,而不是显示文件的最后N项。N值后面可以有后缀:b表示512,k表示1024,m表示1 048576(1M)。 +**tail命令** 用于输入文件中的尾部内容。 +- 默认在屏幕上显示指定文件的末尾10行。 +- 处理多个文件时会在各个文件之前附加含有文件名的行。 +- 如果没有指定文件或者文件名为`-`,则读取标准输入。 +- 如果表示字节或行数的`NUM`值之前有一个`+`号,则从文件开头的第`NUM`项开始显示,而不是显示文件的最后`NUM`项。 +- `NUM`值后面可以有后缀: + - `b` : 512 + - `kB` : 1000 + - `k ` : 1024 + - `MB` : 1000 * 1000 + - `M ` : 1024 * 1024 + - `GB` : 1000 * 1000 * 1000 + - `G ` : 1024 * 1024 * 1024 + - `T`、`P`、`E`、`Z`、`Y`等以此类推。 ### 语法 ```shell -tail(选项)(参数) +tail (选项) (参数) ``` ### 选项 ```shell ---retry:即是在tail命令启动时,文件不可访问或者文件稍后变得不可访问,都始终尝试打开文件。使用此选项时需要与选项“——follow=name”连用; --c或——bytes=:输出文件尾部的N(N为整数)个字节内容; --f或;--follow:显示文件最新追加的内容。“name”表示以文件名的方式监视文件的变化。“-f”与“-fdescriptor”等效; --F:与选项“-follow=name”和“--retry"连用时功能相同; --n或——line=:输出文件的尾部N(N位数字)行内容。 ---pid=<进程号>:与“-f”选项连用,当指定的进程号的进程终止后,自动退出tail命令; --q或——quiet或——silent:当有多个文件参数时,不输出各个文件名; --s<秒数>或——sleep-interal=<秒数>:与“-f”选项连用,指定监视文件变化时间隔的秒数; --v或——verbose:当有多个文件参数时,总是输出各个文件名; ---help:显示指令的帮助信息; ---version:显示指令的版本信息。 +-c, --bytes=NUM 输出文件尾部的NUM(NUM为整数)个字节内容。 +-f, --follow[={name|descript}] 显示文件最新追加的内容。“name”表示以文件名的方式监视文件的变化。 +-F 与 “--follow=name --retry” 功能相同。 +-n, --line=NUM 输出文件的尾部NUM(NUM位数字)行内容。 +--pid=<进程号> 与“-f”选项连用,当指定的进程号的进程终止后,自动退出tail命令。 +-q, --quiet, --silent 当有多个文件参数时,不输出各个文件名。 +--retry 即是在tail命令启动时,文件不可访问或者文件稍后变得不可访问,都始终尝试打开文件。使用此选项时需要与选项“--follow=name”连用。 +-s, --sleep-interal=<秒数> 与“-f”选项连用,指定监视文件变化时间隔的秒数。 +-v, --verbose 当有多个文件参数时,总是输出各个文件名。 +--help 显示指令的帮助信息。 +--version 显示指令的版本信息。 ``` ### 参数 @@ -40,11 +51,11 @@ tail(选项)(参数) ```shell tail file #(显示文件file的最后10行) tail -n +20 file #(显示文件file的内容,从第20行至文件末尾) -tail -c 10 file #(显示文件file的最后10个字符) +tail -c 10 file #(显示文件file的最后10个字节) tail -25 mail.log # 显示 mail.log 最后的 25 行 tail -f mail.log # 等同于--follow=descriptor,根据文件描述符进行追踪,当文件改名或被删除,追踪停止 -tail -F mail.log # 等同于--follow=name --retry,根据文件名进行追踪,并保持重试,即该文件被删除或改名后,如果再次创建相同的文件名,会继续追踪 +tail -F mail.log # 等同于--follow=name --retry,根据文件名进行追踪,并保持重试,即该文件被删除或改名后,如果再次创建相同的文件名,会继续追踪 ```