Linux 的 tail 命令

tail 是 Linux/Unix 系统中一个常用的命令行工具,用于查看文件的末尾内容。默认情况下,它会显示指定文件的最后 10 行内容。

基本语法

bash 复制代码
tail [选项] [文件]

常用选项

  1. -n--lines:指定显示的行数

    bash 复制代码
    tail -n 20 filename.txt  # 显示文件最后20行
  2. -f--follow:实时追踪文件变化(常用于查看日志)

    bash 复制代码
    tail -f /var/log/syslog  # 实时监控系统日志
  3. -c--bytes:显示指定字节数的内容

    bash 复制代码
    tail -c 100 filename.txt  # 显示文件最后100个字节
  4. -q:不显示文件名标题(当处理多个文件时)

    bash 复制代码
    tail -q file1.txt file2.txt
  5. -v:总是显示文件名标题

    bash 复制代码
    tail -v file1.txt file2.txt

高级用法

  1. 组合使用多个选项

    bash 复制代码
    tail -n 15 -f access.log  # 实时显示日志文件最后15行
  2. 与管道配合使用

    bash 复制代码
    dmesg | tail -n 20  # 显示内核消息的最后20行
  3. 从指定位置开始显示

    bash 复制代码
    tail -n +20 filename.txt  # 从第20行开始显示到文件末尾
  4. 监控多个日志文件

    bash 复制代码
    tail -f /var/log/{syslog,kern.log}

实际应用场景

  1. 日志监控

    bash 复制代码
    tail -f /var/log/nginx/access.log  # 实时监控Nginx访问日志
  2. 查看最新记录

    bash 复制代码
    tail -n 50 /var/log/auth.log  # 查看最近的50条认证日志
  3. 结合grep过滤内容

    bash 复制代码
    tail -f /var/log/syslog | grep "error"  # 实时监控系统日志中的错误信息
  4. 查看大文件末尾

    bash 复制代码
    tail -n 100 large_file.csv  # 查看大型CSV文件的最后100行

注意事项

  1. 使用 -f 选项时,需要按 Ctrl+C 退出实时监控模式
  2. 对于二进制文件,tail 命令可能显示乱码
  3. 在脚本中使用时,考虑添加 --pid 选项以便在特定进程结束时自动退出
  4. 某些系统可能需要使用 -F 而非 -f 来跟踪被轮转的日志文件
相关推荐
j_xxx404_4 分钟前
Linux线程:核心机制与优雅的 C++ 封装实践|附源码
linux·运维·服务器·开发语言·c++·人工智能·ai
IMPYLH7 分钟前
Linux 的 users 命令
linux·运维·服务器·前端·数据库·bash
xiaoye-duck10 分钟前
【Linux:文件】Linux 动静态库详解:动态链接与动态库加载深度解析
linux
加油201914 分钟前
嵌入式软件技术栈和学习路线详解
linux·arm开发·数据结构·mqtt·设计模式·嵌入式
Oj92q85H514 分钟前
如何在Dev-C++中使用TDM-GCC编译项目
linux·开发语言·c++
行走的大喇叭18 分钟前
计算机系统组成及常见概念
linux·运维·计算机网络
kyle~18 分钟前
ROS2---rosbag2记录和回放话题、服务和动作数据
linux·机器人·数据采集·ros2
j_xxx404_19 分钟前
Linux线程控制:从用户态控制到内核级克隆全链路解析
linux·运维·服务器·开发语言·c++·ai
z2005093023 分钟前
【linux学习】进程的概念和在linux系统下的基本实现情况01
linux·网络·学习
铅笔小新z27 分钟前
【Linux】基础IO
linux·服务器