2006-07-09 21:52:00 ekylin 阅读数 711
 
Linux 使用日志
问题1. 如何设置显示器分辨率 ?
 (1) 显示器分辨率可以在控制中心的硬件中设置, 由于液晶不支持高于75Hz的刷新率,因此需要更改为较低的频率.
 (2) 修改 /etc/X11/XF86Config 或 XF86Config-4.
问题2. 如何阅读和编辑WORD文档?
问题3. 安装Firefox 1.06, 出现 -618=无法打开 xpistub 库.
2018-01-25 15:42:02 alinekang 阅读数 1149

昨天总结了日志的一些用法和在程序中打日志的重要性,今天来说说如何看日志,linux系统下如何查看日志。


最常用的命令:

tail -f + 日志文件名

这种方式可以查看正在改变的日志文件,它会把日志里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容。

tail -f filename | grep xxxxx

在增长日志中搜索匹配的行,能让你更精确的找出想要看的log日志内容,提高效率。


tail:用于输入文件中的尾部内容。tail命令默认在屏幕上显示指定文件的末尾10行。如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。如果没有指定文件或者文件名为“-”,则读取标准输入。注意:如果表示字节或行数的N值之前有一个”+”号,则从文件开头的第N项开始显示,而不是显示文件的最后N项。N值后面可以有后缀:b表示512,k表示1024,m表示1 048576(1M)。

grep/zgrep:(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。


在此之前,我对linux的命令并不熟悉,只知道一种方式查看文件内容,即vim命令。显然,这种方法是不可取的,

我们的项目部署在服务器上,通过堡垒机登录查看,要注意很多问题。

查看日志文件的其他几种方式:

vim/vi ->不推荐使用

cat/zcat ->不推荐使用,会消耗大量的cpu和内存,导致堡垒机响应速度慢,影响使用。

less/zless -> 可以使用它查看应用日志文件,连接异常断开也不会产生临时文件。


就这样啦,写的不好,请多包涵。



2018-07-09 19:27:58 samjustin1 阅读数 917

快捷键

ctrl+a:定位到开始
ctrl+e:定位到最后
ctrl+u:删除整行
alt+backspace :删除单词
ctrl+方向键:移动一个单词位

这里写图片描述

head 仅仅显示前面几行

head -n 10  test.log   查询日志文件中的头10行日志;  

head -n -10  test.log   查询日志文件除了最后10行的其他所有日志;  

tail

tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容.

命令格式

tail[必要参数][选择参数][文件]

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

命令功能:

用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

    -f 循环读取
    -q 不显示处理信息
    -v 显示详细的处理信息
    -c<数目> 显示的字节数  -c NumberNumber 字节位置读取指定文件
    -n<行数> 显示行数  -n NumberNumber 行位置读取指定文件。
    --pid=PID 与-f合用,表示在进程ID,PID死掉之后结束. 
    -q, --quiet, --silent 从不输出给出文件名的首部 
    -s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S

使用示例

  • 实例1:查询最后20行,并且查找关键字 结果
    命令:
tail -n 20 fdata.log | grep '结果'
  • 实例2:循环查看文件内容 (实时监控)
    命令:
tail -f test.log

说明:监视filename文件的尾部内容(默认10行,相当于增加参数 -n 10),刷新显示在屏幕上。退出,按下CTRL+C

  • 示例3:搜索关键词
tail -n 20 fdata.log | grep '结果'

搜索到的关键词标红

tail -n 20 fdata.log | grep '结果' --color
  • 示例4:linux 如何显示一个文件的某几行(中间几行)

从第3000行开始,显示1000行。即显示3000~3999行
cat filename | tail -n +3000 | head -n 1000

显示1000行到3000行
cat filename| head -n 3000 | tail -n +1000

*注意两种方法的顺序
分解:

tail -n 1000:显示最后1000行
tail -n +1000:从1000行开始显示,显示1000行以后的
head -n 1000:显示前面1000
  • 查询最后20行,并且查找关键字 结果(文字标红),上下扩展2行
tail -n 20 fdata.log | grep '结果' --color -a2

补充:

跟tail功能相似的命令还有:
cat 从第一行開始显示档案内容。
tac 从最后一行開始显示档案内容。
more 分页显示档案内容。
less 与 more 相似,但支持向前翻页
head 仅仅显示前面几行
tail 仅仅显示后面几行
n 带行号显示档案内容
od 以二进制方式显示档案内容

cat

cat主要有三大功能:
1.一次显示整个文件。$ cat filename

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

3.将几个文件合并为一个文件: $cat file1 file2 > file

搜索关键词

示例1# cat a.txt | grep cc
bbbbbbbbccc
ccee

示例2:
cat -n aa.log | grep "exception"

创建文件

$ cat > filename 
//只能创建新文件,不能编辑已有文件. 

tac (反向列示)

tac 是将 cat 反写过来,所以他的功能就跟 cat 相反, cat 是由第一行到最后一行连续显示在萤幕上,
而 tac 则是由最后一行到第一行反向在萤幕上显示出来!

查询场景

按行号查看—过滤出关键字附近的日志

1. cat -n test.log |grep "debug"  得到关键日志的行号
2. cat -n test.log |tail -n +92|head -n 20

tail -n +92表示查询92行之后的日志
head -n 20 则表示在前面的查询结果里再查前20条记录

日志内容特别多,打印在屏幕上不方便查看

  • 使用more和less命令,
    这样就分页打印了,通过点击空格键和B键翻页
cat -n test.log |grep "debug" |more     
  • 使用 >xxx.txt 将其保存到文件中,到时可以拉下这个文件分析
cat -n test.log |grep "debug"  >debug.txt

根据日期查询日志

sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p'  test.log

sed -n '/起始时间/,/结束时间/p' 日志文件

特别说明:上面的两个日期必须是日志中打印出来的日志,否则无效;
先 grep ‘2014-12-17 16:17:20’ test.log 来确定日志中是否有该 时间点

日志文件超大时,用vim查找

vim fdata.log  打开文件

ctrl+g  定位到最后一行
看到窗口显示底端两个字,代表已经到了展示文件末尾。

:? com.fm.fdata
从最后往上查找最近关键字,点 N 往上:倒数第二个

这里写图片描述

没有更多推荐了,返回首页