Linux tail 命令

Linux 的 tail 命令是一个非常实用的工具,用于查看文件的末尾内容,默认显示文件的最后 10 行。它在系统管理和日志监控中尤为常用,以下是其核心功能和用法总结:


一、基本语法

tail [选项] [文件]

二、常用选项

选项功能示例
-n--lines显示文件末尾的指定行数tail -n 20 /var/log/syslog(显示最后20行)
-c--bytes显示文件末尾的指定字节数tail -c 100 /etc/passwd(显示最后100字节)
-f--follow实时监控文件新增内容(常用于日志跟踪)tail -f /var/log/syslog(持续输出新内容)
-F类似 -f,但文件被删除或重命名后仍会跟踪tail -F /var/log/syslog(适合日志轮转场景)
-q--quiet多文件时禁止显示文件名tail -q file1.txt file2.txt
-v--verbose多文件时始终显示文件名tail -v file1.txt file2.txt
-r--reverse反向输出文件内容(从最后一行开始)tail -r file.txt
-s--sleep-interval=S设置 -f 监控的刷新间隔tail -f file.log -s 2(每2秒刷新一次)
--pid=PID当指定进程结束时停止监控tail --pid=1234 -f file.log

三、典型用法示例

  1. 查看文件默认的最后10行

    tail /etc/passwd
    
  2. 显示文件的最后20行

    tail -n 20 /var/log/syslog
    

    💥注意:N 前加 + 表示从第 N 行开始显示

    tail -n +20 /var/log/syslog
    

    从第 5 行开始显示

  3. 实时监控日志文件

    按需按 Ctrl+C 停止

    tail -f /var/log/syslog
    
  4. 监控多个文件

    tail -f /var/log/syslog /var/log/nginx/access.log
    
  5. 动态调整监控间隔

    tail -f file.log -s 5
    
  6. 监控文件并自动恢复(适合日志轮转)

    tail -F /var/log/syslog
    
  7. 显示文件的最后100字节

    tail -c 100 /etc/passwd
    

    💥注意:N 前加 + 表示从第 N 个字节开始显示

    tail -c +100 /etc/passwd
    
  8. 组合 headtail 定位中间行

    head -n 20 file.txt | tail -n 10
    
  9. 结合 grep 过滤内容

    tail -f /var/log/syslog | grep "error"
    
  10. 单文件查看并显示文件名

tail -v file1.txt
  1. 反向显示文件内容

    tail -r -n 20 file.txt
    

    作用:逆序显示 file.txt 的最后 20 行(从末尾到开头),适用于调试历史操作。


四、应用场景

  1. 日志监控

    • 实时查看日志文件的最新内容(如 /var/log/syslog/var/log/nginx/access.log)。
    • 示例:tail -f /var/log/nginx/error.log
  2. 调试与排查问题

    • 快速定位日志中的错误或异常信息,结合 grep 筛选关键内容。
  3. 查看大文件结尾

    • 避免加载整个大文件,直接查看末尾数据(如配置文件、文本文件)。
  4. 文件内容反向查看

    • 使用 -r 选项反向输出文件内容,适用于需要逆序分析的场景。

五、注意事项

  • 注意-n-c 后面数字带 +号 表示含义

  • -f-F 的区别

    • -f:文件必须存在且可读,文件被删除或重命名后会报错。
    • -F:文件被删除或重命名后,会自动跟踪新文件(适合日志轮转场景)。
  • 终止 tail -f
    按下 Ctrl+C 或使用 kill 命令终止进程。

  • 性能优化
    对于超大文件,tail 只读取末尾部分,效率远高于 catless

  • 文件编码问题

    对于多字节字符(如中文),使用 -m 选项避免截断

  • 权限问题

    查看系统日志(如 /var/log/syslog)可能需要 sudo 权限


六、总结

  • tail 是查看文件末尾内容的首选工具,尤其适合实时监控日志。
  • 结合 -f-F 和管道命令(如 grep),可以高效调试和分析系统状态。
  • 熟悉其选项(如 -n-c-r)能灵活应对不同场景需求。

👍 与其活成别人的光,不如先让自己发光
😊 希望对你有帮助!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/84399.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/84399.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【案例拆解】米客方德 SD NAND 在车联网中(有方模块)的应用:破解传统 TF 卡振动脱落与寿命短板

👨‍🎓博主简介 🏅CSDN博客专家   🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊交流社区:运维交流社区 欢迎大家的加入&#xff01…

中泰制造企业组网新方案:中-泰企业国际组网专线破解泰国工厂访问国内 OA/ERP 卡顿难题

在东南亚开厂的中国制造企业,估计都遇到过这个糟心事:泰国工厂的员工想访问国内总部的 OA、ERP 系统,结果页面加载半天没反应,文件传输慢得像蜗牛,视频会议还时不时卡成 PPT。以前大家常用的 MPLS 专线,虽然…

【二进制安全作业】250617课上作业4 - start

文章目录 前言一、使用环境二、pwndbg介绍1. 命令介绍2. 界面介绍 三、反汇编分析四、Shellcode五、解题思路六、编写EXP结语 前言 作业3遇到了很严重的问题,一直没搞定,先略过了,要讲的东西也一起放到这里讲吧。 这道题是 pwnable 的第一道…

【vivado中实现时序仿真】

这里写自定义目录标题 如何在vivado中实现时序仿真准备工作设计输入与管理综合与实现仿真与调试IP核与重用硬件编程与配置设计分析与优化跨平台支持与兼容性编写测试激励代码运行时序仿真查看和分析结果高级技巧 如何在vivado中实现时序仿真 在Vivado中进行时序仿真&#xff0…

运维常用命令

目录 一、系统监控与性能分析 vmstat命令 一、命令语法及核心参数 二、输出字段解析(关键列) 三、工作场景案例 1. 排查 CPU 瓶颈 2. 内存不足导致 Swap 频繁 3. 磁盘 I/O 性能问题 4. 系统卡顿实时监控 5. 高级用法:统计内存事件 …

代码随想录day10栈和队列1

文章目录 数组模拟栈栈的应用 单调栈栈(stack) 数组模拟队列队列stl(queue)双端队列stl(deque)滑动窗口单调队列 232.用栈实现队列225. 用队列实现栈20. 有效的括号1047. 删除字符串中的所有相邻重复项 数组模拟栈 题目链接 #include <iostream> #include <cstdio&g…

Unity 把广告收入(revenue)上报到AppsFlyer

文章目录 第一步第二步 官方文档 第一步 升级版本 如果你的AppsFlyer版本大于文档中要求的6.15以上&#xff0c;即可跳过第一步 在unity这里可以看到AppsFlyer版本 下载最新版本地址 在这个位置&#xff0c;单独下载这个unitypackage包就行 如果是用srict-mode(严格模式)…

2023年蓝桥杯青少第十四届蓝桥杯Scratch省赛中级组真题——小狗避障

小伙伴们&#xff0c;7月的全国信息素养大赛复赛准备得怎么样了&#xff1f;推荐到家做完信息素养大赛的历年真题后&#xff0c;可以有选择性的做做蓝桥杯青少的编程题&#xff0c;质量还是蛮好的&#xff5e; 下面这道是&#xff1a; 2023年蓝桥杯青少第十四届蓝桥杯Scratch…

为复杂iOS应用实施多重安全保护:从Ipa混淆到加密的完整安全方案

在现代移动应用的开发过程中&#xff0c;尤其是那些涉及用户隐私、支付或企业敏感数据的应用&#xff0c;安全问题早已成为不可忽视的核心问题。iOS系统由于其相对封闭的生态和严格的审核机制&#xff0c;通常被认为具有较高的安全性。然而&#xff0c;随着破解技术的发展&…

docker 如何优化容器启动时间

优化 Docker 容器启动时间&#xff0c;尤其在大规模部署、CI/CD 或微服务架构中非常关键。启动慢会影响响应时间、弹性扩缩容和用户体验。以下是从镜像构建、容器运行、依赖管理等多个方面整理的 容器启动加速方案&#xff1a; 一、优化镜像构建&#xff08;启动慢 ≈ 镜像臃肿…

基于 Python Django 框架的宠物医院管理系统设计与实现

摘要 本研究针对传统宠物医院管理模式存在的效率低下、信息不共享、服务流程繁琐等问题&#xff0c;设计并实现了一个基于 Python Django 框架的宠物医院管理系统。系统采用 B/S 架构&#xff0c;整合了客户管理、宠物管理、医生管理、诊疗管理、药品管理、库存管理、财务管理…

6612345(Web打印浏览器) 开发历程

6612345(Web打印浏览器) 开发历程 2022年7月,由于chrome新版本的限制, HttpPrinter(Web打印插件) 从http协议转为websocket协议. 为了提前预防chrome后续版本(至于哪个版本,我们也不知道)无法和本地插件通信,我们重新定制了一款chrome浏览器.绕过通讯限制. 首个版本,基于微软…

信安实验室CTF writeup

文章目录 1、白给签到2、Welcome3、Get4、Post5、滴滴滴6、每逢佳节7、Bacon8、古典变奏9、affine10、affine-revenge11、Random_encrypt12、easy_re13、re114、ez_xor15、maze16、easy_php17、easy_bypass18、Autumn19、easy_Cookie20、[白给] 连上就给flag21、小兔子22、我在…

【入门级-基础知识与编程环境:NOI以及相关活动的历史】

NOI 及相关活动的历史如下&#xff1a; 1984 年&#xff1a;邓小平同志提出 “计算机的普及要从娃娃抓起”。为响应这一号召&#xff0c;中国计算机学会&#xff08;CCF&#xff09;于当年自主创建了面向中学生的 “全国青少年程序设计竞赛”&#xff0c;当年参加竞赛的有 8000…

微软应用商店打不开怎么办2025,打开TLS1.3

微软应用商店打不开怎么办? 应用商店打不开 步骤如下 1. “Internet选项”、“高级”&#xff0c;进行设置 注意&#xff1a;将“使用TSL 1.2”和“使用TSL 1.3”都勾选上&#xff0c;再点击“应用” 应该最主要是TLS1.3&#xff0c;我之前TLS1.2开了的。 2. 选择“连接”…

C/C++ 高频八股文面试题1000题(一)

原作者&#xff1a;Linux教程&#xff0c;原文地址&#xff1a;C/C 高频八股文面试题1000题(一) 在准备技术岗位的求职过程中&#xff0c;C/C始终是绕不开的核心考察点。无论是互联网大厂的笔试面试&#xff0c;还是嵌入式、后台开发、系统编程等方向的岗位&#xff0c;C/C 都…

JetBrains IDE v2025.1 升级,AI 智能+语言支持齐飞

2025.1 大版本同步上线&#xff0c;JetBrains 家族全员升级&#xff01;不只是性能提升&#xff0c;更有 AI 驱动开发、大语言支持、终端大改&#xff0c;为开发者带来真正的生产力飞跃。接下来&#xff0c;一起来看看 IntelliJ IDEA、PyCharm、GoLand、CLion 等产品的重磅亮点…

高性能群集部署技术-LVS+Keepalived高可用群集

目录 #1.1Keepalived双机热备基础知识 1.1.1Keepalived概述及安装 1.1.2Keepalived的热备方式 1.1.3Keepalived的安装与服务控制 #2.1使用Keeplived实现双机热备 2.1.1主服务器的配置 2.1.2备用服务器的配置 2.1.3测试双机热备功能 #3.1使用Keeplived实现双机热备的实验案例…

ros中相机话题在web页面上的显示,尝试js解析sensor_msgs/Image数据

ros中相机话题在web页面上的显示 思路&#xff1a; rosbridge websocket 开启ros与web的通路&#xff0c; 话题数据转换为image或者绘制在 canvas中。 话题格式&#xff1a; sensor_msgs/Image 测试数据编码类型为bgr8 尝试&#xff1a; 解析 为bitmap arraybuffer 写入bgr…

PowerShell批量处理文件名称/内容的修改

在日常的文件管理与处理中&#xff0c;常常需要对大量文件名或文件内容进行修改&#xff0c;而手动逐个操作既繁琐又容易出错。PowerShell作为一种强大的脚本语言&#xff0c;为我们提供了高效批量处理文件名及内容修改的解决方案。通过编写简单的PowerShell脚本&#xff0c;可…