Linux 实时查看文件 tail 命令详解

这篇具有很好参考价值的文章主要介绍了Linux 实时查看文件 tail 命令详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、概述

tail 命令用于显示文件的末尾内容,默认显示文件的最后 10 行。通常情况下,tail 命令用于实时查看日志文件,可以使用 -f 参数跟踪文件内容的变化。tail 命令的语法如下:

tail [选项...] [文件名...]

二、参数说明

tail 命令支持以下参数:

1. -n,–lines=K

该选项用于指定要显示的行数,K 为整数。例如,-n 20 表示显示文件的最后 20 行。如果 K 前面加上一个正号 + ,则表示从文件开头数第 K 行开始显示。例如,-n +10 表示显示文件的第 10 行及其之后的所有内容。如果 K 前面加上一个负号 - ,则表示显示文件的除了最后 K 行以外的所有内容。例如,-n -20 表示显示文件除了最后 20 行以外的所有内容。

示例:

tail -n 20 access.log

该命令将会显示 access.log 文件的最后 20 行。

tail -n +10 access.log

该命令将会从 access.log 文件的第 10 行开始显示所有内容。

2. -f,–follow[={name|descriptor}]

该选项用于实时查看文件的内容,并持续输出最新的内容。当文件内容增加时,tail 命令会自动更新显示的内容。如果不加参数,则默认使用文件名作为标识符,也可以使用文件描述符、管道等作为标识符。

示例:

tail -f access.log

该命令将会实时查看 access.log 文件的内容,并持续输出最新的内容。

3. -q,–quiet,–silent

该选项用于禁止显示文件名和文件头标识符。在多文件查看时,该选项可以避免显示每个文件的文件名。

示例:

tail -q -n 10 access.log error.log

该命令将会显示 access.log 和 error.log 文件的最后 10 行,但不会显示文件名和文件头标识符。

4. -v,–verbose

该选项和 -q 相反,用于显示文件名和文件头标识符。

示例:

tail -v -n 10 access.log error.log

该命令将会显示 access.log 和 error.log 文件的最后 10 行,并显示文件名和文件头标识符。

5. -c,–bytes=K

该选项用于指定要显示的字节数,K 为整数。例如,-c 1024 表示显示文件的最后 1024 个字节。如果 K 前面加上一个正号 + ,则表示从文件开头数第 K 个字节开始显示。例如,-c +1024 表示显示文件从第 1024 个字节开始的所有内容。如果 K 前面加上一个负号 - ,则表示显示文件的除了最后 K 个字节以外的所有内容。例如,-c -1024 表示显示文件除了最后 1024 个字节以外的所有内容。

示例:

tail -c 1024 access.log

该命令将会显示 access.log 文件的最后 1024 个字节。

6. --max-unchanged-stats=N

该选项用于指定当文件被删减或重命名等情况下,等待最长的时间,单位为秒。如果在指定的时间内文件没有恢复,tail 命令就退出。默认值为 5 秒。

示例:

tail --max-unchanged-stats=10 -f access.log

该命令将会实时查看 access.log 文件的内容,并等待最长 10 秒的时间。

7. --pid=PID

该选项用于指定进程 ID。如果指定了该选项,则 tail 命令会在该进程退出时也退出。该选项可以避免因为进程退出而产生的错误信息。

示例:

tail -f access.log --pid=1234

该命令将会实时查看 access.log 文件的内容,并在进程 ID 为 1234 的进程退出时退出。

8. --retry

该选项用于重新打开被删除或重命名的文件。如果文件重新出现,tail 命令就会读取新的文件内容。

示例:

tail -f access.log --retry

该命令将会实时查看 access.log 文件的内容,并重新打开文件。

三、其他用法

1. 显示多个文件的末尾内容

tail 命令可以显示多个文件的末尾内容,将文件名依次写在命令行的末尾即可。如果要在多个文件中搜索指定的内容,可以使用 cat 命令和管道符号将多个文件合并成一个标准输出流,再使用 tail 命令查找指定的内容。

示例:

tail -f access.log error.log

该命令将会实时查看 access.log 和 error.log 文件的内容。

cat access.log error.log | tail -n 20 | grep "error"

该命令将会从 access.log 和 error.log 文件中的最后 20 行中查找包含 “error” 的内容。

2. 对日志进行滚动

在实际生产环境中,日志经常需要定期进行滚动,以免文件过大导致读写效率低下。tail 命令可以和 crontab 结合使用,定期检查日志文件的大小,达到一定阈值时进行备份并创建新的日志文件。

示例:

0 0 * * * if [ -f access.log ]; then if [ $(stat -c%s "access.log") -gt 1000000 ]; then mv access.log $(date +"%Y%m%d%H%M%S").access.log && touch access.log; fi; fi;

该命令将会在每天零点检查 access.log 文件的大小,如果超过 1000000 字节,则将文件重命名为格式为 “年月日时分秒.access.log” 的名字,并创建一个新的 access.log 文件。这样可以保证每天都有一个新的日志文件,并且每个日志文件的大小不会超过阈值。文章来源地址https://www.toymoban.com/news/detail-495811.html

到了这里,关于Linux 实时查看文件 tail 命令详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux 终端命令之文件浏览(4) head, tail

    cat, more, less, head, tail,此五个文件浏览类的命令皆为外部命令。 英文帮助 NAME        head - output the first part of files SYNOPSIS        head [OPTION]... [FILE]... DESCRIPTION        Print the first 10 lines of each FILE to standard output.  With more than one FILE, precede each with a header giving the file name.    

    2024年02月11日
    浏览(31)
  • 【Linux】:文件查看 stat、cat、more、less、head、tail、uniq、wc

    🎥 屿小夏 : 个人主页 🔥个人专栏 : Linux深造日志 🌄 莫道桑榆晚,为霞尚满天! 在Linux系统中,文件是信息的核心。深入了解和操作文件内容是每个系统管理员和开发者必备的技能。本文将为您揭开Linux文件魔法的面纱,介绍一系列强大的命令,包括stat、cat、more、less、

    2024年04月28日
    浏览(28)
  • Linux:文件查看:《cat》《more》《less》《head》《tail》《wc》《grep》使用方法

    同样是查看为什么要有这么多查看方法??? 因为他们的用法和扩功能肯定不一样,选择与你需要匹配的一条命令可以节省时间的同时更快速 cat + 文件 可以直接查看文件内的内容  直接可以查看文件内的内容 要直接看更多的文件以空格隔开的方式一起查看文件 more + 文件

    2023年04月26日
    浏览(28)
  • Linux命令200例:tail用来显示文件的末尾内容(常用)

    🏆作者简介,黑夜开发者,全栈领域新星创作者✌。CSDN专家博主,阿里云社区专家博主,2023年6月csdn上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 🏆本文已收录于专栏:Linux命令大全。 🏆本专栏我们会通过 具体的系统的命令讲解 加上

    2024年02月12日
    浏览(33)
  • Linux磁盘空间与文件大小查看命令详解

            在Linux系统中,有多个命令可以用来查看磁盘空间的使用情况。最常用的命令是 df (disk free)。 df 命令的 -h 选项以人类可读的方式显示磁盘空间,该命令将显示文件系统的使用情况、剩余空间等信息。         为了查看特定文件夹的大小,我们可以使用 du (

    2024年01月20日
    浏览(46)
  • Linux中使用nvidia-smi命令实时查看指定GPU使用情况

    参考:使用watch和nvidia-smi命令实时查看GPU使用、显存占用情况 nvidia-smi :可以查看显卡的型号、驱动版本、显卡目前温度、显存已使用及剩余、正使用显卡的所有进程及占用显存等信息; watch -n 5 nvidia-smi :5代表每隔5秒刷新一次GPU使用情况,同理,每隔1秒刷新,则使用:w

    2024年01月22日
    浏览(40)
  • 一分钟学一个 Linux 命令 - cat 和 tail

    大家好,我是 god23bin。今天我给大家带来的是 Linux 命令系列, 每天只需一分钟,记住一个 Linux 命令不成问题 。今天,需要你花费两分钟时间,因为我们要介绍的是两个常用的查看文件内容的命令: cat 和 tail 命令。 cat 命令源自于 concatenate files and print 这个词组,意思为「连

    2024年02月08日
    浏览(25)
  • Linux 文件查看命令

    一、cat命令 1. cat+文件名 ,查看文件内容: 例如,查看main.c文件的内容: 2. cat 文件名 ,往文件中写入数据, Ctrl+d是结束输入 例如,向文件a.txt中写入数据: 查看刚刚写入a.txt的内容: 3. cat 文件名1 文件名2 新文件名 ,合并文件,将文件1和文件2 的内容合并放到新文件中

    2024年02月13日
    浏览(30)
  • Linux 系统 history(查看执行命令历史) 命令详解

    history 命令是Linux/Unix系统中的一个常用命令,用于查看当前用户在命令行中执行过的命令历史记录。该命令允许用户查看、搜索、编辑和执行之前执行过的命令,为用户提供了方便、快捷的操作方式。本文将全面详细地讲解 history 命令的各种用法和注意事项,并提供一些实用

    2024年02月16日
    浏览(33)
  • Linux -- 查看进程 top命令 详解

    我们上篇介绍了, Linux 中的进程等概念,那么,在Linux 中如何查看进程呢 ?? 我们常用到的有两个命令, PS 和 top 两个命令,今天先来介绍下 top 命令~! 主要是 交互式的,动态 的显示 进程信息~!!! 语法 : top [ -d 数字 ] [ 选项 ] 选项 : -d : 后面可以接秒数,就是整个

    2024年02月07日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包