目录:

  • 前言
  • cat命令
  • more命令
  • less命令
  • head命令
  • tail命令
  • tac命令
  • echo命令
  • grep命令
  • sed命令
  • 混合命令
  • 附加

前言:

当日志存储文件很大时,我们就不能用 vi 直接去查看日志了,就需要Linux的一些内置命令去查看日志文件.

系统Log日志位置:

/var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一

/var/log/secure 与安全相关的日志信息

/var/log/maillog 与邮件相关的日志信息

/var/log/cron 与定时任务相关的日志信息

/var/log/spooler 与UUCP和news设备相关的日志信息

/var/log/boot.log 守护进程启动和停止相关的日志消息

cat命令:

参数:

-n 或 --number 由 1 开始对所有输出的行数编号

-b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号

-s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行

-v 或 --show-nonprinting

-E --show-ends 在每行结束处显示 $

-e --等价于-vE

cat主要有三大功能:

1. $ cat filename 一次显示整个文件。

2. $ cat > filename 从键盘创建一个文件。(只能创建新文件,不能编辑已有文件)

3. $ cat filename1 filename2 > filename 将几个文件合并为一个文件(如果原本file文件中有内容,会被覆盖掉) 

例:

把 file1 的内容加上行号后输入到 file2 这个文件里 

cat -n filename1 > filename2

把 file1 和 file2 的内容加上行号(空白行不加)之后将内容追加到 file3 里

cat -b filename1 filename2 >> filename3 

test.txt文件扔进垃圾箱,赋空值test.txt

cat /dev/null > /etc/test.txt  

注意:>意思是创建,>>是追加。千万不要弄混了。 

more命令:

more 命令是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作。

该命令一次显示一屏文本信息,满屏后停下来,以百分比的形式,以上下翻页,以上下行移动显示查看日志并且在屏幕

的底部给出一个提示信息,从开始至当前己显示的该文件的百分比:–More–(XX%)

 **按键**说明**

 按Space键:显示文本的下一屏内容。

 按B键:显示上一屏内容。

 按Enter键:只显示文本的下一行内容。

 按斜线符:接着输入一个模式,可以在文本中寻找下一个相匹配的模式。

 按H键:显示帮助屏,该屏上有相关的帮助信息。

 按Q键:退出more命令

less命令:

less 命令查看日志,和more命令类似,只不过less支持上下键前后翻阅文件。

head命令:

参数:

-q 隐藏文件名

-v 显示文件名

-c 显示字节数

-n 显示的行数

从文本文件的头部开始查看,head 命令用于查看一个文本文件的开头部分。

例:

head filename 或 head -n 10 显示文本文件 file 的前十行内容,然后退出命令

head -n 20 filename 显示文本文件 file 的前二十行内容

head -n -10 filename 显示文本文件除了最后10行的其他所有文本文件信息

tail命令:

tail 命令用于显示文本文件的末尾内容(默认10行,相当于增加参数 -n 10),并且实时不断有内容被打印出来,

  若想中断进程,使用命令 Ctrl-C

参数:

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

参数解释:

-f 该参数用于监视File文件增长。

-c Number 从 Number 字节位置读取指定文件

-n Number 从 Number 行位置读取指定文件。

-m Number 从 Number 多字节字符位置读取指定文件,比方你的文件假设包括中文字,假设指定-c参数,可能导致截断,但使用-m则会避免该问题。

-b Number 从 Number 表示的512字节块位置读取指定文件。

-k Number 从 Number 表示的1KB块位置读取指定文件。

File 指定操作的目标文件名称

上述命令中,都涉及到number,假设不指定,默认显示10行。Number前面可使用正负号,表示该偏移从顶部还是从尾部开始计算。

tail 可运行文件一般在/usr/bin/以下。

tail -f filename 监视filename文件的尾部内容(默认10行,相当于增加参数 -n 10)

tail -100f filename 监视filename文件的尾部内容(默认从底部往前100行,相当于增加参数 -n 100)

tail -n 20 filename 显示filename最后20行

tail -r -n 10 filename 逆序显示filename最后10行

tac命令:

tac (反向查看日志,会打开整个文件,倒序显示,不常用)

tac 是将 cat 反写过来,所以他的功能就跟 cat 相反。

cat 是由第一行到最后一行连续显示在屏幕上,而 tac 则是由最后一行到第一行反向在萤幕上显示出来

echo命令:

echo 命令用来在标准输出上显示一段字符

echo [ -n ] 字符串其中选项n表示输出文字后不换行;字符串能加引号,也能不加引号

echo "the echo command test!"

echo "the echo command test!">filename 输出内容到文件

echo 命令输出加引号的字符串时,将字符串原样输出

echo 命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割

grep命令:

grep 同时满足多个关键字和满足任意关键字,是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,显示完自动退出命令

grep [options] 

参数: 

[options]参数: 

-c:只输出匹配行的计数

-I:不区分大小写(只适用于单字符)

-h:查询多文件时不显示文件名

-l:查询多文件时只输出包含匹配字符的文件名

-n:显示匹配行及行号

-s:不显示不存在或无匹配文本的错误信息

-v:显示不包含匹配文本的所有行

-A: 显示匹配行及前面多少行, 如: -A3, 则表示显示匹配行及前3行

-B: 显示匹配行及后面多少行, 如: -B3, 则表示显示匹配行及后3行

-C: 显示匹配行前后多少行, 如: -C3, 则表示显示批量行前后3行

pattern正则表达式主要参数: 

: 忽略正则表达式中特殊字符的原有含义

^:匹配正则表达式的开始行

$: 匹配正则表达式的结束行

<:从匹配正则表达 式的行开始

>:到匹配正则表达式的行结束

[ ]:单个字符,如[A]即A符合要求

[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求

。:所有的单个字符

- :有字符,长度可以为0

grep -n "word" filename 查看文件包含条件的日志,全部显示出来(单引号或者双引号都可以,不区分)

grep -E "word1|word2|word3" filename 满足任意条件(word1、word2和word3之一)将匹配的内容全部打印出来

grep word1 filename | grep word2 |grep word3 必须同时满足三个条件(word1、word2和word3)才匹配多管道,多次筛选

使用正则表达式 -E 选项

grep -E "[1-9]+" 或 egrep "[1-9]+"

grep -A100 'word' filename 显示匹配行往后100行

grep -B100 'word' filename 显示匹配行往前100行

grep -C100 'word' filename 显示匹配行往前往后100行

sed命令:

sed 本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作

参数

-n∶使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到萤幕上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。

-p ∶列印,亦即将某个选择的资料印出。通常 p 会与参数 sed -n 一起运作~

-s ∶取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g

sed -n '5,10p' filename 只查看文件的第5行到第10行

sed -n '/2019-01-04 21:30:00/,/2019-01-04 22:30:30/p' filename 只查看文件包含时间段的区间内容

混合命令:

tail -n +92表示查询92行之后的日志

tail filename -n 300 -f 查看底部即最新300条日志记录,并实时刷新

tail -f filename | grep -E 'word1|word2|word3' 实时打印出匹配规则的文件内容(注意或符号前后最好不要有空格)

cat -n filename |grep “地形” | more 得到关键日志的行号

cat -n filename |tail -n +92|head -n 20

grep 'nick' | tail filename -C 10 查看字符‘nick'前后10条日志记录, 大写C

head -n 20 则表示在前面的查询结果里再查前20条记录

附加:

vi filename 查看或编辑文件

查找文件内容关键字方法:

先 执行命令>:  vi      filename

然后输入>:   /查找字符串

按n查找下一个

如查找nohup.out日志文件的error关键字:

执行命令:         vi  nohup.out

输入以下回车:      /error

按n查找下一个

将实时日志打印到指定文件:

将实时日志打印到文件newlog.log内,方便查找

执行命令:   tail  -f  nohup.out   >newlog.log

备注:newlog.log文件可以不存在,命令执行时会自动新建

Linux环境下查看日志文件命令详解相关推荐

  1. django配置环境linux,linux环境下Django的安装配置详解

    linux环境下Django的安装配置详解 1. 下载安装Django pip install Django==1.6.5 测试是否安装成功 >>> import django> ...

  2. linux中关于防火墙的命令,Linux系统中查看防火墙的命令详解

    Linux系统中如果要查看到防火墙的状态信息要怎么办呢?下面由学习啦小编为大家整理了Linux系统中查看防火墙的命令详解,希望对大家有帮助! Linux系统中查看防火墙的命令详解:一.service方 ...

  3. linux查看磁盘分区命令,Linux下查看磁盘分区命令详解

    计算机用户,日复一日在磁盘中存储.移动.删除各类文件.当然会关心磁盘空间的使用情况.在 Linux 中有一个 Shell 可以让用户随时随地对磁盘空间的使用情况一清二楚.它就是"df&quo ...

  4. weblogic部署linux静默安装,Linux环境下Weblogic11g中间件-静默安装详解

    第一步: 安装产品 1.配置好java环境变量 java -version查看是否生效,weblogic11g要求最好用1.6以上JDK进行安装配置 2.找到安装介质执行命令:java -jar wl ...

  5. linux centos7 mysql_Linux centos7环境下安装MySQL的步骤详解

    Linux centos7环境下安装MySQL的步骤详解 安装MySQL mysql 有两个跟windows不同的地方 1).my.ini 保存到/etc/my.ini 2).用户权限,单独用户执行 ...

  6. md0和md1linux软raid,linux下Raid及mdadm命令详解

    linux下Raid及mdadm命令详解 1.RAID级别:仅代表磁盘组织方式不同,没有高低之分: Raid常用种类:raid0,raid1,raid5,raid10,raid01 jbod:叠加硬盘 ...

  7. linux mk创建文件,Linux运维知识之Linux mkkickstart建立安装的组态文件命令详解

    本文主要向大家介绍了Linux运维知识之Linux mkkickstart建立安装的组态文件命令详解,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. 功能说明:建立安装的组态文件 ...

  8. Linux环境下查看IP不显示IPv4地址

    Linux环境下查看IP不显示IPv4地址 问题 解决方法 额外方法 后续 问题 这篇文章记录一下,当我在虚拟机下运行Ubuntu时,想在我的windows下通过putty连接到Linux系统,但发现 ...

  9. Linux环境下查看网络性能的基本命令

                     Linux环境下查看网络性能的基本命令 由于Linux经常使用的是字符界面,而且Linux的功能比较强大,具有默认路由功能,相当于网关和路由器.在网络性能方面也比较稳 ...

最新文章

  1. thinkphp 微信授权登录 以及微信实现分享
  2. 云计算学习(2-4)云计算的案例
  3. boost::mpl模块实现set相关的测试程序
  4. GreenPlum数据库故障恢复测试
  5. java项目短信群发接口_JAVA实现第三方短信发送过程详解
  6. 14 MM配置-BP业务伙伴-定义供应商科目组和字段选择
  7. 20180802总结
  8. Ubuntu删除不干净导致的一系列后果
  9. OpenVINO DL workbench的docker安装
  10. setup factory的命令行打包
  11. echarts:中国地图-省市区二级联动
  12. FPGA之旅设计99例之第十八例----OV5640摄像头SCCB时序
  13. H.264 NAL语法语意以及字节流的语法语意
  14. iphone开蓝牙wifi上网慢_iPhone手机网速慢解决方法
  15. UE4 Async Loading Screen真异步加载插件使用傻瓜式教程
  16. linux进入pe系统,如何进入pe系统【设置模式】
  17. 苹果iOS11重磅改版App Store,开发者应该了解这些
  18. 数据库(教务管理系统)
  19. 前端导出多页pdf 带目录 页眉 页脚及页码
  20. Anchor-based和Anchor-free优缺点对比

热门文章

  1. Python老司机带你快速搞定日志分析工具
  2. 【解惑】杨中科说给弟弟的话
  3. 闲人闲谈之十二——关于工程项目报价综合业务实现
  4. Lu求解含积分的复杂非线性方程(组)
  5. Arduino上手动添加开发板
  6. 电脑上不去网?一行命令解决
  7. 使用飞信API 发送 短信
  8. 把Sqlite当嵌入式KV数据库用
  9. 【数据结构】插入排序(直接插入排序 希尔排序)
  10. 工业智能网关BL110应用之60:如何实现智能楼宇控制BACnet 接入阿里云平台