tail
是 Linux 系统中一个非常实用的命令,主要用于查看文件的末尾内容。它是系统管理员和开发人员日常工作中的日志分析、故障排查等场景中发挥着重要作用,是每个 Linux 用户都应该掌握的基础命令之一。
目录
一、基本用法
1. 查看文件末尾内容
tail filename.txt
这会显示文件的最后10行内容(默认行为):
2. 指定显示行数
tail -n 20 filename.txt
或简写为:
tail -20 filename.txt
这会显示文件的最后20行内容:
二、高级用法
3. 实时监控文件变化(跟随模式)
tail -f filename
-f
选项(follow 的缩写)允许 tail 持续显示文件新增的内容,非常适合监控日志文件的实时更新(前面的博客提到的指令中有实时监控文件变化的功能也是跟这个一样的操作):
打开另一个终端窗口,向文件追加内容:
会看到第一个终端中立即显示出新添加的内容:
4. 结合 grep 过滤内容
tail -f /var/log/syslog | grep "error"
这样可以实时监控系统日志中出现的错误信息。
5. 显示从第N行开始到文件末尾的内容
tail -n +20 filename.txt
这会显示从第20行开始到文件末尾的所有内容:
6. 监控多个文件
tail -f file1 file2
可以同时监控多个文件的更新。
7. 显示文件名标题
tail -v filename.txt
-v
选项会在输出前显示文件名,这在处理多个文件时特别有用:
8. 结合其他命令使用
dmesg | tail -20
查看内核消息的最后20行。
三、实际应用示例
-
监控 Apache 访问日志
tail -f /var/log/apache2/access.log
-
查看最近发生的系统错误
tail -30 /var/log/syslog
-
查看大文件的最后部分
tail -c 1K largefile.bin
显示文件的最后1KB内容(使用
-c
指定字节数)
注意事项
-
tail
命令默认使用 UTF-8 编码处理文本文件,否则会显示乱码 -
对于二进制文件,
tail
也能工作,但输出可能包含不可读字符 -
在跟随模式(
-f
)下,按Ctrl+C
可退出(重点)