Linux查看日志的命令有很多,比如tail、cat、tac、head、echo等,今天给大家介绍几种常用的方法:
①.、tail-实时查看变化的日志
命令格式:tail [必要参数][选择参数][文件]
-f:循环读取
-q:不显示处理信息
-v:显示详细的处理信息
-c数目:显示的字节数
-n行数:显示行数
-q, --quiet, --silent:从不输出给出文件名的首部
-s, --sleep-interval=S:与-f合用,表示在每次反复的间隔休眠S秒
跟tail相反,head是看日志的前多少行
head -n 10 test.log:查询日志文件中的前10行日志;
head -n -10 test.log:查询日志文件除了最后10行的其他所有日志;
cat是由第一行到最后一行连续显示在屏幕上
最常用的命令:cat -n filename | grep "关键字"
more的语法:more 文件名
last
-a 把从何处登入系统的主机名称或ip地址,显示在最后一行.
-d 指定记录文件.指定记录文件.将IP地址转换成主机名称.
-f 记录文件 指定记录文件.
-n 显示列数或-显示列数 设置列出名单的显示列数.
-R 不显示登入系统的主机名称或IP地址.
-x 显示系统关机,重新开机,以及执行等级的改变等信息
以下看所有的重启、关机记录
last | grep reboot
last | grep shutdown
history
列出所有的历史记录:
只列出最近10条记录:
重复执行上一个命令
执行最后一次以rpm开头的'命令(!? ?代表的是字符串,这个String可以随便输,Shell会从最后一条历史命令向前搜索,最先匹配的一条命令将会得到执行.)
逐屏列出所有的历史记录:
立即清空history当前所有历史命令的记录
cat, tail 和 watch
系统所有的日志都在 /var/log 下面自己看(具体用途可以自己查,附录列出一些常用的日志)
cat /var/log/syslog 等
cat /var/log/*.log
tail -f
如果日志在更新,如何实时查看 tail -f /var/log/messages
还可以使用 watch -d -n 1 cat /var/log/messages
-d表示高亮不同的地方,-n表示多少秒刷新一次.
该指令,不会直接返回命令行,而是实时打印日志文件中新增加的内容,
这一特性,对于查看日志是非常有效的.如果想终止输出,按 Ctrl+C 即可.
除此之外还有more, less ,dmesg|more,这里就不作一一列举了,因为命令太多了,关键看个人喜好和业务需求.个人常用的就是以上那些
linux日志文件说明
/var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一
/var/log/secure 与安全相关的日志信息
/var/log/maillog 与邮件相关的日志信息
/var/log/cron 与定时任务相关的日志信息
/var/log/spooler 与UUCP和news设备相关的日志信息
/var/log/boot.log 守护进程启动和停止相关的日志消息
/var/log/wtmp 该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件
启动之后,会在jar所在目录生成一个nuhup.log日志文件,记录控制台的日志输出.
备注:主要看符号两边: "" 对应输出什么和输出到哪里;
输出分为标准输出和错误输出,标准输出就是全输出,输出控制台信息;错误输出只是输出错误日志信息;
输出到哪,分为输出到指定路径日志文件和重定向位置.
①指定路径:如下: /data/work/log.log 这样便是指定输出到路径/data/work/log.log文件.
Linux上有一个特例路径/dev/null ,这路径就好像永久删除的回收站,当我们不需要输出任何信息时,就可以将输出指向/dev/null,那就不会有任何输出文件.
①. 重定向到标准输出的地址,啥意思,就是输出到已指定的标准输出的地址.
命令后面加的 ,可让命令在后台执行,否则关闭会话会停止程序.
解释:标准日志输出到/data/log.log文件,错误日志输出到/data/err.log文件.
解释:标准日志输出到/data/log.log文件,错误日志重定向也输出到/data/log.log文件.
解释:标准日志输出到/dev/null,也就是不输出标准日志,错误日志输出到/data/err.log文件.
具体如下:
①首先为了演示应用程序输出信息,这里我们选择tomcat的日志输出文件来演示,当然也可以选择您自己任意的应用程序.这里我们连接上linux服务器之后,cd命令切换到tomcat的logs目录