• linux查看日志文件内容命令sed、cat、tac、more、less、head、tail、echo 1、按时间查询


    #查询日志:linux查看日志文件内容命令sed、cat、tac、more、less、head、tail、echo
    1、按时间查询
    sed -n '/2017-09-20 14:00:/,/2017-09-20 15:00:]/p' catalina.out
    2、按时间查询并将查询结果保存到指定文件
    sed -n '/2017-09-20 14:00:/,/2017-09-20 15:00:]/p' catalina.out> catalina.out.201709201415
    sed -n '/2017-09-20 14:00:/,/2017-09-20 15:00:]/p' catalina.out> catalina.out.201709201415
    3、按关键字查询,输出当前这个日志的前后几行(显示关键字上下文)
    cat catalina.out| grep -C 5 '失败'  #显示file文件里匹配foo字串那行以及上下5行
    cat catalina.out | grep -B 5 '失败' #显示foo及前5行
    cat catalina.out | grep -A 5 '失败' 显示foo及后5行

    4、如何显示一个文件的某几行(中间几行)
    cat filename | tail -n +3000 | head -n 1000   #从第3000行开始,显示1000行。即显示3000~3999行
    cat filename | head -n 3000 | tail -n +1000    #显示1000行到3000行
    *注意两种方法的顺序
    分解:
    tail -n 1000:显示最后1000行
    tail -n +1000:从1000行开始显示,显示1000行以后的
    head -n 1000:显示前面1000行

    用sed命令
    sed -n '5,10p' filename 这样你就可以只查看文件的第5行到第10行。

    例:cat mylog.log | tail -n 1000 #输出mylog.log 文件最后一千行
    ======================================================================================
    1、cat命令:
           功能:
    1)一次显示整个文件。$ cat filename
    2)从键盘创建一个文件。$ cat > filename 
       只能创建新文件,不能编辑已有文件.
    3)将几个文件合并为一个文件: $cat file1 file2 > file
           参数:
          -n 或 --number 由 1 开始对所有输出的行数编号
    -b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号
    -s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
    -v 或 --show-nonprinting
          例:
    把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里
    cat -n textfile1 > textfile2

    把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3 里。
    cat -b textfile1 textfile2 >> textfile3

    把test.txt文件扔进垃圾箱,赋空值test.txt
    cat /dev/null > /etc/test.txt 
    注意:>意思是创建,>>是追加。千万不要弄混了。
    ------------------------------------------
    tac (反向列示)
    tac 是将 cat 反写过来,所以他的功能就跟 cat 相反, cat 是由第一行到最后一行连续显示在萤幕上,
    而 tac 则是由最后一行到第一行反向在萤幕上显示出来!
    --------------------------------------------------------------------------------------------------------
    2、more命令:     
           以百分比的形式查看日志。
    3、less命令:
           跟more功能差不多,只不过less支持前后翻阅文件。
    4、head命令:
         功能:从文本文件的头部开始查看,head 命令用于查看一个文本文件的开头部分。
         示例如下:
         head example.txt 显示文件 example.txt 的前十行内容;
         head -n 20 example.txt 显示文件 example.txt 的前二十行内容;
         head详解:
         -n      指定你想要显示文本多少行。
         -n number     这个参数选项必须是十进制的整数,它将决定在文件中的位置,以行为单位。
         -c number     这个参数选项必须是十进制的整数,它将决定在文件中的位置,以字节为单位。
    5、tail命令:
         功能:tail 命令用于显示文本文件的末尾几行。
         示例如下:
         tail example.txt 显示文件 example.txt 的后十行内容;
         tail -n 20 example.txt 显示文件 example.txt 的后二十行内容;
         tail -f example.txt 显示文件 example.txt 的后十行内容并在文件内容增加后,自动显示新增的文件内容。
         tail -n 50 -f example.txt 显示文件 example.txt 的后50行内容并在文件内容增加后,自动显示新增的文件内容。
         注意:
         最后一条命令非常有用,尤其在监控日志文件时,可以在屏幕上一直显示新增的日志信息。
         tail详解:
         -b Number 从 Number 变量表示的 512 字节块位置开始读取指定文件。 
         -c Number 从 Number 变量表示的字节位置开始读取指定文件。 
         -f 如果输入文件是常规文件或如果 File 参数指定 FIFO(先进先出),
         那么 tail 命令不会在复制了输入文件的最后的指定单元后终止,而是继续
         从输入文件读取和复制额外的单元(当这些单元可用时)。如果没有指定 File 参数,
         并且标准输入是管道,则会忽略 -f 标志。tail -f 命令可用于监视另一个进程正在写入的文件的增长。 
         -k Number 从 Number 变量表示的 1KB 块位置开始读取指定文件。 
         -m Number 从 Number 变量表示的多字节字符位置开始读取指定文件。使用该标志提供在单字节和双字节字符代码集环境中的一致结果。 
          -n Number 从首行或末行位置来读取指定文件,位置由 Number 变量的符号(+ 或 - 或无)表示,并通过行号 Number 进行位移。 
           -r 从文件末尾以逆序方式显示输出。-r 标志的缺省值是以逆序方式显示整个文件。如果文件大于 20,480 字节,那么-r标志只显示最后的 20,480 字节。 -r 标志只有
       与 -n 标志一起时才有效。否则,就会将其忽略。
    ------------------------------------------
    在Linux中echo命令用来在标准输出上显示一段字符,比如:
    echo "the echo command test!"


    这个就会输出“the echo command test!”这一行文字!


    echo "the echo command test!">a.sh
    这个就会在a.sh文件中输出“the echo command test!”这一行文字! 
    该命令的一般格式为: echo [ -n ] 字符串其中选项n表示输出文字后不换行;字符串能加引号,也能不加引号。
    用echo命令输出加引号的字符串时,将字符串原样输出;
    用echo命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割。

  • 相关阅读:
    SSH key 运作方式
    C++数据结构 -- AVL树
    java家教信息计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
    Devops之构建工具实践
    CMake使用记录
    18.客户端会话技术Cookie
    泛微OA E-Office V10 OfficeServer 任意文件上传漏洞复现
    QT实现动态翻译切换
    泛型的使用
    ACP知识串联
  • 原文地址:https://blog.csdn.net/weixin_72426331/article/details/127346016