linux查看日志命令
1. tail
-f 循环读取 -q 不显示处理信息 -v 显示详细的处理信息 -c<数目> 显示的字节数 -n<行数> 显示行数 -q, --quiet, --silent 从不输出给出文件名的首部 -s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒 tail -n 10 test.log 查询日志尾部最后10行的日志; tail -n +10 test.log 查询10行之后的所有日志; tail -f test.log 循环实时查看最后10行的日志;相当于增加参数 -n 10 tail -fn 1000 test.log 循环实时查看最后1000行记录(最常用的) //一般还会配合着grep用, 例如 : tail -fn 1000 test.log | grep '关键字'
2. head
//head 仅仅显示前面几行 head -n 10 test.log 查询日志文件中的头10行日志; head -n -10 test.log 查询日志文件除了最后10行的其他所有日志;
3. cat
cat主要有三大功能: 1.一次显示整个文件。$ cat filename 2.从键盘创建一个文件。$ cat > filename 只能创建新文件,不能编辑已有文件. 3.将几个文件合并为一个文件: $cat file1 file2 > file 参数: -n 或 --number 由 1 开始对所有输出的行数编号 -b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号 -s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行 -v 或 --show-nonprinting 例: 把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里 cat -n textfile1 > textfile2 把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3 里。 cat -b textfile1 textfile2 >> textfile3 把test.txt文件扔进垃圾箱,赋空值test.txt cat /dev/null > /etc/test.txt 注意:>意思是创建,>>是追加。千万不要弄混了。
4. grep
grep [options] 主要参数: [options]主要参数: -c:只输出匹配行的计数。 -I:不区分大 小写(只适用于单字符)。 -h:查询多文件时不显示文件名。 -l:查询多文件时只输出包含匹配字符的文件名。 -n:显示匹配行及 行号。 -s:不显示不存在或无匹配文本的错误信息。 -v:显示不包含匹配文本的所有行。 pattern正则表达式主要参数: : 忽略正则表达式中特殊字符的原有含义。 ^:匹配正则表达式的开始行。 $: 匹配正则表达式的结束行。 <:从匹配正则表达 式的行开始。 >:到匹配正则表达式的行结束。 [ ]:单个字符,如[A]即A符合要求 。 [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。 。:所有的单个字符。 - :有字符,长度可以为0。
5. sed
//按照行号 sed -n '5,10p' filename //这样你就可以只查看文件的第5行到第10行。 //按照时间段 sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log