小伙伴们肯定都遇到这么尴尬场景,线上服务出问题了,老大一直在问什么问题导致的,而你由于对查找文本的命令不太熟,鼓捣了半天才找到那条 异常日志,而这时可能半个小时都已经过去了。老大可能对你失望透顶了。讲真我就是这样的小白。对此痛定思痛,疯狂了解各种查找命令的使用方式。

常用的文本查找命令

   cat命令

   格式:cat [-ns] file

 选项

-n 显示行号

-s 空行不输出

这是对查找文件有用的两个选项,其它的相关选项可以自行百度

   more命令

   格式:more [-spcl][-number][+number][+/pattern] file

   选项

-s 空行不输出

-number 显示多少行

-l 忽略文件里面的换页符号

-p 通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似

+lineNumber 显示lineNumber下的内容

+/pattern 从第一次出现该字段的前两行开始显示

  操作命令

Ctrl+F 向前翻一页

Ctrl+B 向后翻一页

空格 向下翻一页

enter 向下翻一行

=  显示当前行号

:f 显示文档名称,当前行号

q 退出more命令

  less命令

  格式: less [-Ni] file

选项

-N 显示行号

-i 查找匹配字段时忽略大小写

操作命令:

/pattern 向下查询该字段

?pattern 向上查询该字段

n 重复前一个搜索

N 反向重复前一个搜索

pageUp 向前翻一页

pageDown 向下翻一页

回车 向下翻一页

空格 向下翻一行

tail命令 

 格式: tail [-fn] file

选项

-f 监控文件最新输入

-n 显示多少行

   grep命令

   格式:grep [-ABC][number] [--color=auto] pattern file

   选项:

     -C  number 显示该匹配字段的上下number行

-B  number 显示该字段的前number行

-A number 显示该字段的后number行

     --color 高亮显示

sed命令

  格式:sed -n 'n,mp' file

  选项

-n 静态显示

该命令用于显示n行到m行之间的内容

命令的组合使用

case1:线上服务出现问题了,是在几个小时之前出的问题,我知道问题的几个关键字怎么办?

解决:cat fileName |grep "xxx" --color=auto

case2: 我想抓取下日志最后30条,并且高亮显示带有‘exception的行’

解决:tail -fn 30 fileName |grep 'exception' --color=auto;

case3:我大概定位到问题所在的位置,但是还需要具体看这段时间的日志内容才能确定

解决:cat -n fileName |grep 'exception'  观察下行号

sed -n '10,20p' fileName 显示这段行号里面的内容,接下来你就慢慢看吧

我的运维之旅-查找文本的linux命令的更多相关文章

  1. 运维必须掌握的150个Linux命令

    线上查询及帮助命令(1个)man 目录操作命令(6个)ls tree pwd mkdir rmdir cd 文件操作命令(7个)touch cp mv rm ln find rename 文件查看及处 ...

  2. 运维人员最常用150个linux命令汇总

    命令 功能说明 线上查询及帮助命令(2个) man 查看命令帮助,命令的词典,更复杂的还有info,但不常用. help 查看Linux内置命令的帮助,比如cd命令. 文件和目录操作命令(18个) l ...

  3. linux运维需要掌握什么知识?linux运维学习路线

    linux运维需要掌握什么知识?这个问题算是老生常谈了,但是本人认为知道需要掌握什么知识不是重点,重点是我们需要知道运维是做什么的?再来根据工作需求去讨论需要学习什么知识才是正途,须知知识是学不完的, ...

  4. 从零开始运维之旅:如何监控你的 Windows?

    小弟乃刚刚踏入运维圈的资深小白一枚,正所谓完事开头难,公司里怕我把生产系统搞坏就让我先在测试环境上先练练手.巧的是测试环境又是我熟悉的 Windows 环境,心中窃喜啊.但问题随之而来,运维从何下手呢 ...

  5. linux运维的认知及RHEL7 Unix/Linux 系统 介绍和安装

    如何成为一个优秀的linux运维人员?      如果你有机会和条件:环境能够磨练一个人的能力和意志.      大胆的做你从未做过的项目,每一个项目都是对自身的极大提升.      有好的环境资源不 ...

  6. 跟老刘学运维day03~新手必须掌握的Linux命令(3)

    第2章 Linux命令 今天已经跟老刘学习运维第三天了,前两天对虚拟机和Linux系统的安装进行了深入的学习,今天开始命令的学习 系统状态检测命令 1.ifconfig   2.uname:查看系统内 ...

  7. 《马哥出品高薪linux运维教程》wingkeung学习笔记-linux基础入门课程

    计算机原理概念: 1.CPU和内存中的存储单元通信线路称为总线(BUS),总线是被指令和数据复用的,所以也称为前端总线. 2.计算机中计算频率的时间标准即晶体振荡器原理,精确计算时间长度,根据相同的时 ...

  8. 系统运维技巧(三)——利用dd命令临时增加交换分区

    有时会遇到内存不够用的情况,可以使用本文提供的方法进行临时增加交换分区. #制作交换分区——得到文件 [root@serv01 linux-2.6.38]# dd if=/dev/zero of=/s ...

  9. Linux centos7日常运维——监控io性能、free内存命令、ps进程命令、查看网络状态、linux下抓包

    一.监控io性能 Linux系统出现了性能问题,一般我们可以通过top.iostat.free.vmstat等命令来查看初步定位问题.其中iostat可以给我们提供丰富的IO状态数据. iostat ...

随机推荐

  1. Android之Bmob移动后端云服务器

    源码下载:http://download.csdn.net/download/jjhahage/10034519 PS:一般情况下,我们在写android程序的时候,想要实现登录注册功能,可以选择自己 ...

  2. 迭代器中next()的用法

    >>> g = (x ** 2 for x in range(10)) >>> next(g) 0 >>> next(g) 1 >>& ...

  3. SPI通讯协议

    一.SPI概述 SPI,是英语Serial Peripheral Interface的缩写,顾名思义就是串行外围设备接口.SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线, ...

  4. Flask笔记

    # -*- coding: utf-8 -*- from flask import Flask,render_template,request,redirect,session,url_for imp ...

  5. C陷阱:求数组长度

    // 这是一篇导入进来的旧博客,可能有时效性问题. 程序中,当我们建立了一个int型数组:int a[]={1,2,3,4,5,6};随后我们可能需要知道它的长度,此时可以用这种方法:length = ...

  6. bzoj:1299: [LLH邀请赛]巧克力棒

    原题:http://www.lydsy.com/JudgeOnline/problem.php?id=1299 众多dalao的题解已经很详细了:http://blog.csdn.net/wzq_qw ...

  7. Gym100971B Gym100971C Gym100971F Gym100971G Gym100971K Gym100971L(都是好写的题。。。) IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13, 2016

    昨天训练打的Gym,今天写题解. Gym100971B 这个题就是输出的时候有点小问题,其他的都很简单. 总之,emnnn,简单题. 代码: #include<iostream> #inc ...

  8. 96、python version 3.6 required,which was not fount in the registry(python3.6安装scrapy)

    在安装scrapy时遇到问题 环境:win10(64位), Python3.6(64位) 安装scrapy: 1.安装wheel(安装后,便支持通过wheel文件安装软件) pip3 install ...

  9. php错误 分析

    ---------------------------------------------------------------------------------------------------- ...

  10. ADO.NET复习总结(3)--参数化SQL语句--防止sql注入式攻击

    1.SQL 注入 2.使用参数化的方式,可以有效防止SQL注入,使用类parameter的实现类SqlParameter Command的属性parameters是一个参数集合. 3.举例<查询 ...