linux查看日志的命令(Linux系统中如何查看日志常用命令)

发布时间:2025-12-10 22:48:15 浏览次数:1

在开发和测试的过程中,经常需要用到Linux环境查看日志相关相关信息,当日志存储文件很大时,我们就不能用 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--等价于-vEcat主要有三大功能:1.$catfilename一次显示整个文件。2.$cat>filename从键盘创建一个文件。(只能创建新文件,不能编辑已有文件)3.$catfilename1filename2>filename将几个文件合并为一个文件(如果原本file文件中有内容,会被覆盖掉)盖掉)例:把file1的内容加上行号后输入到file2这个文件里cat-nfilename1>filename2把file1和file2的内容加上行号(空白行不加)之后将内容追加到file3里cat-bfilename1filename2>>filename3把test.txt文件扔进垃圾箱,赋空值test.txtcat/dev/null>/etc/test.txt注意:>意思是创建,>>是追加。千万不要弄混了。12345678910111213141516171819202122232425

二、more命令:

more命令是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作。该命令一次显示一屏文本信息,满屏后停下来,以百分比的形式,以上下翻页,以上下行移动显示查看日志并且在屏幕的底部给出一个提示信息,从开始至当前己显示的该文件的百分比:–More–(XX%)**按键**说明**按Space键:显示文本的下一屏内容。按B键:显示上一屏内容。按Enter键:只显示文本的下一行内容。按斜线符:接着输入一个模式,可以在文本中寻找下一个相匹配的模式。按H键:显示帮助屏,该屏上有相关的帮助信息。按Q键:退出more命令1234567891011

三、less命令:

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

四、head命令:

参数:-q隐藏文件名-v显示文件名-c显示字节数-n显示的行数从文本文件的头部开始查看,head命令用于查看一个文本文件的开头部分。例:headfilename或head-n10显示文本文件file的前十行内容,然后退出命令head-n20filename显示文本文件file的前二十行内容head-n-10filename显示文本文件除了最后10行的其他所有文本文件信息123456789101112

五、tail命令:

tail命令用于显示文本文件的末尾内容(默认10行,相当于增加参数-n10),并且实时不断有内容被打印出来,若想中断进程,使用命令Ctrl-C参数:tail[-f][-cNumber|-nNumber|-mNumber|-bNumber|-kNumber][File]参数解释:-f该参数用于监视File文件增长。-cNumber从Number字节位置读取指定文件-nNumber从Number行位置读取指定文件。-mNumber从Number多字节字符位置读取指定文件,比方你的文件假设包括中文字,假设指定-c参数,可能导致截断,但使用-m则会避免该问题。-bNumber从Number表示的512字节块位置读取指定文件。-kNumber从Number表示的1KB块位置读取指定文件。File指定操作的目标文件名称上述命令中,都涉及到number,假设不指定,默认显示10行。Number前面可使用正负号,表示该偏移从顶部还是从尾部开始计算。tail可运行文件一般在/usr/bin/以下。tail-ffilename监视filename文件的尾部内容(默认10行,相当于增加参数-n10)tail-100ffilename监视filename文件的尾部内容(默认从底部往前100行,相当于增加参数-n100)tail-n20filename显示filename最后20行tail-r-n10filename逆序显示filename最后10行12345678910111213141516171819202122232425

六、tac命令:

tac(反向查看日志,会打开整个文件,倒序显示,不常用)tac是将cat反写过来,所以他的功能就跟cat相反。cat是由第一行到最后一行连续显示在屏幕上,而tac则是由最后一行到第一行反向在萤幕上显示出来12345

七、echo命令:

echo命令用来在标准输出上显示一段字符echo[-n]字符串其中选项n表示输出文字后不换行;字符串能加引号,也能不加引号echo"theechocommandtest!"echo"theechocommandtest!">filename输出内容到文件用echo命令输出加引号的字符串时,将字符串原样输出用echo命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割1234567

八、grep命令:

grep同时满足多个关键字和满足任意关键字,是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是GlobalRegularExpressionPrint,表示全局正则表达式版本,显示完自动退出命令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之一)将匹配的内容全部打印出来grepword1filename|grepword2|grepword3必须同时满足三个条件(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行123456789101112131415161718192021222324252627282930313233343536373839404142

九、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-0421:30:00/,/2019-01-0422:30:30/p'filename只查看文件包含时间段的区间内容123456789101112

混合命令:

tail-n+92表示查询92行之后的日志tailfilename-n300-f查看底部即最新300条日志记录,并实时刷新tail-ffilename|grep-E'word1|word2|word3'实时打印出匹配规则的文件内容(注意或符号前后最好不要有空格)cat-nfilename|grep“地形”|more得到关键日志的行号cat-nfilename|tail-n+92|head-n20grep'nick'|tailfilename-C10查看字符‘nick’前后10条日志记录,大写Chead-n20则表示在前面的查询结果里再查前20条记录1234567891011

附加:

vifilename查看或编辑文件查找文件内容关键字方法:先执行命令>:vifilename然后输入>:/查找字符串按n查找下一个例如查找nohup.out日志文件的error关键字:执行命令:vinohup.out输入以下回车:/error按n查找下一个将实时日志打印到指定文件:例将实时日志打印到文件newlog.log内,方便查找执行命令:tail-fnohup.out>newlog.log备注:newlog.log文件可以不存在,命令执行时会自动新建

什么是Linux系统

Linux是一种免费使用和自由传播的类UNIX操作系统,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统,使用Linux能运行主要的Unix工具软件、应用程序和网络协议。

感谢您能读到这里,小编希望您对“Linux系统中如何查看日志常用命令”这一关键问题有了从实践层面最深刻的体会,具体使用情况还需要大家自己动手实践使用过才能领会,如果想阅读更多相关内容的文章,欢迎关注本站行业资讯频道!

linux查看日志的命令
需要做网站?需要网络推广?欢迎咨询客户经理 13272073477