• Linux tail命令详解


    一、tail命令介绍

      Linux tail命令的用途是按照要求将指定的文件的最后部分输出到标准设备,一般是终端,通俗来讲,就是把某个文件的最后几行显示到终端上,如果该档案有更新,tail会自动刷新,确保你看到最新的档案内容。tail命令的语法格式如下:

    tail [ -f ] [ -c Number | -n Number | -m Number| -b Number | -k Number ] [ File ]

    参数说明如下表所示:

    参数 功能
    -f 该参数用于监视文件的实时增加
    -c Number 从第Number个字节位置读取指定文件
    -n Number 从第Number位置读取指定文件
    -m Number 从第Number个字符位置读取指定文件
    -b Number 从第Number个512字节块位置读取指定文件
    -k Number 从第Number个1KB字节块位置读取指定文件

    在以上参数中,都涉及到Number,如果不指定Number,默认显示后10行,Number前面可使用正负号,表示该偏移从顶部还是从尾部开始计算。

    二、tail命令使用实例

    【例1】显示/etc/passwd,分别从顶部的第10行、底部的第10行开始显示

    ➜  test tail -n +10 /etc/passwd
    news:x:9:9:news:/var/spool/news:/usr/sbin/nologin   # 本行是从顶部开始的第10行
    uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
    proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
    www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
    ......
    ......
    baichunyu.bcy:x:1001:1001::/home/baichunyu.bcy:/home/linuxbrew/.linuxbrew/bin/zsh
    
    ➜  test tail -n 10 /etc/passwd
    tiger:x:1000:1000::/home/tiger:/bin/bash            # 本行是从底部开始的第10行,即倒数第10行
    falcon:x:2000:2000::/home/falcon:/bin/bash
    _chrony:x:106:110:Chrony daemon,,,:/var/lib/chrony:/bin/false
    _lldpd:x:107:112::/var/run/lldpd:/bin/false
    messagebus:x:108:113::/var/run/dbus:/bin/false
    unscd:x:109:114::/var/lib/unscd:/bin/false
    ganglia:x:1999:1999:Ganglia Monitor:/var/lib/ganglia:/bin/false
    Debian-exim:x:110:115::/var/spool/exim4:/bin/false
    statd:x:111:65534::/var/lib/nfs:/bin/false
    baichunyu.bcy:x:1001:1001::/home/baichunyu.bcy:/home/linuxbrew/.linuxbrew/bin/zsh
    
    ➜  test tail -n -10 /etc/passwd
    tiger:x:1000:1000::/home/tiger:/bin/bash            # 本行也是从底部开始的第10行,即倒数第10行
    falcon:x:2000:2000::/home/falcon:/bin/bash
    _chrony:x:106:110:Chrony daemon,,,:/var/lib/chrony:/bin/false
    _lldpd:x:107:112::/var/run/lldpd:/bin/false
    messagebus:x:108:113::/var/run/dbus:/bin/false
    unscd:x:109:114::/var/lib/unscd:/bin/false
    ganglia:x:1999:1999:Ganglia Monitor:/var/lib/ganglia:/bin/false
    Debian-exim:x:110:115::/var/spool/exim4:/bin/false
    statd:x:111:65534::/var/lib/nfs:/bin/false
    baichunyu.bcy:x:1001:1001::/home/baichunyu.bcy:/home/linuxbrew/.linuxbrew/bin/zsh

    从上述结果中可以看出,Number前如果是正号(+),则偏移量Number是从顶部开始计算;Number前如果是负号(-),则偏移量Number是从底部开始计算;如果没有正负号,则默认是从底部开始计算

    【例2】监控/etc/passwd的后10行

    ➜  test tail -f /etc/passwd
    tiger:x:1000:1000::/home/tiger:/bin/bash
    falcon:x:2000:2000::/home/falcon:/bin/bash
    _chrony:x:106:110:Chrony daemon,,,:/var/lib/chrony:/bin/false
    _lldpd:x:107:112::/var/run/lldpd:/bin/false
    messagebus:x:108:113::/var/run/dbus:/bin/false
    unscd:x:109:114::/var/lib/unscd:/bin/false
    ganglia:x:1999:1999:Ganglia Monitor:/var/lib/ganglia:/bin/false
    Debian-exim:x:110:115::/var/spool/exim4:/bin/false
    statd:x:111:65534::/var/lib/nfs:/bin/false
    baichunyu.bcy:x:1001:1001::/home/baichunyu.bcy:/home/linuxbrew/.linuxbrew/bin/zsh
                             # 此时光标停在这里,如果文件有实时更新,这里会实时显示
  • 相关阅读:
    echo "不允许上传该类型的文件
    php构造函数,引入数据库操作类函数
    php函数描述及例子
    php如何判断远程文件是否存在
    多线程面试题系列(16):多线程十大经典案例之一 双线程读写队列数据
    多线程面试题系列(15):关键段,事件,互斥量,信号量的“遗弃”问题
    多线程面试题系列(14):读者写者问题继 读写锁SRWLock
    多线程面试体系列(13):多线程同步内功心法——PV操作下
    多线程面试题系列(12):多线程同步内功心法——PV操作上
    多线程面试题系列(11):读者写者问题
  • 原文地址:https://www.cnblogs.com/baichunyu/p/15329421.html
Copyright © 2020-2023  润新知