Linux日志查看方法
1.Linux tail 命令
tail 命令可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件。
tail -f filename 会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 filename 更新就可以看到最新的文件内容。
命令格式:
tail [参数] [fileName]
常用参数:
- -f :循环读取
- -n<行数> :显示文件的尾部 n 行内容
实例:
要显示 notes.log 文件的最后 10 行:
tail notes.log # 默认显示最后 10 行
循环读取 notes.log 文件的最后 20 行:
tail -fn 20 notes.log
循环读取 notes.log 文件的最后 20 行,只显示含有“ERROR”关键字的行:
tail -fn 20 notes.log | grep 'ERROR'
2.Linux cat 命令
cat 命令会将文件第一行到最后一行连续显示在屏幕上
命令格式:
cat [参数] [--help] [--version] fileName
常用参数:
- -n :由 1 开始对所有输出的行数编号。
- -b :和 -n 相似,只不过对于空白行不编号。
实例:
一次显示整个文件 :
cat fileName
把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里:
cat -n textfile1 > textfile2
把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里:
cat -b textfile1 textfile2 >> textfile3
清空 /etc/test.txt 文档内容:
cat /dev/null > /etc/test.txt
注意:
>
意思是创建,>>
是追加。如果不希望文件内容被覆盖,可以使用 >> 操作符追加到文件末尾。
/dev/null 文件介绍:
如果希望执行某个命令,但又不希望在屏幕上显示输出结果,那么可以将输出重定向到 /dev/null
$ command > /dev/null
/dev/null 是一个特殊的文件,写入到它的内容都会被丢弃;如果尝试从该文件读取内容,那么什么也读不到。但是 /dev/null 文件非常有用,将命令的输出重定向到它,会起到"禁止输出"的效果。
如果希望屏蔽 stdout 和 stderr,可以这样写:
$ command > /dev/null 2>&1
注意:
0 是标准输入(STDIN),1 是标准输出(STDOUT),2 是标准错误输出(STDERR)。这里的 2 和 > 之间不可以有空格,2> 是一体的时候才表示错误输出。