linux-command/command/tail.md

64 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

tail
===
在屏幕上显示指定文件的末尾若干行
## 补充说明
**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 (选项) (参数)
```
### 选项
```shell
-c, --bytes=NUM 输出文件尾部的NUMNUM为整数个字节内容。
-f, --follow[={name|descript}] 显示文件最新追加的内容。“name”表示以文件名的方式监视文件的变化。
-F 与 “--follow=name --retry” 功能相同。
-n, --line=NUM 输出文件的尾部NUMNUM位数字行内容。
--pid=<进程号> 与“-f”选项连用当指定的进程号的进程终止后自动退出tail命令。
-q, --quiet, --silent 当有多个文件参数时,不输出各个文件名。
--retry 即是在tail命令启动时文件不可访问或者文件稍后变得不可访问都始终尝试打开文件。使用此选项时需要与选项“--follow=name”连用。
-s, --sleep-interal=<秒数> 与“-f”选项连用指定监视文件变化时间隔的秒数。
-v, --verbose 当有多个文件参数时,总是输出各个文件名。
--help 显示指令的帮助信息。
--version 显示指令的版本信息。
```
### 参数
文件列表:指定要显示尾部内容的文件列表。
### 实例
```shell
tail file #显示文件file的最后10行
tail -n +20 file #显示文件file的内容从第20行至文件末尾
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根据文件名进行追踪并保持重试即该文件被删除或改名后如果再次创建相同的文件名会继续追踪
```