Heim > Artikel > Betrieb und Instandhaltung > Was ist der Befehl zum Anzeigen von Protokollen unter Linux?
Befehle zum Anzeigen von Protokollen unter Linux: 1. tail-Befehl, der sich in Echtzeit ändernde Protokolle anzeigen kann, mit der Syntax „tail [erforderliche Parameter] [Parameter auswählen] [Datei]“; 2. head-Befehl, der die anzeigen kann die ersten paar Protokollzeilen mit der Syntax „ head -n „Zeilennummerndatei“; 3. Der Befehl „cat“ kann nach Protokollen in der Nähe von Schlüsselwörtern suchen; 4. Der Befehl „more“ kann den Inhalt der Protokolldatei Seite für Seite im Vollbildmodus anzeigen 5. Der Befehl sed kann nach bestimmten Protokolldateien suchen. 6. Der Befehl less kann den Inhalt der Protokolldatei durchsuchen.
Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Dell G3-Computer.
Als Back-End-Programmierer habe ich viel mit Linux zu tun, ich weiß nicht, wie man Linux-Protokolle liest, und ich bin sehr anfällig für Spott von Kollegen und Interviewern, daher ist es sehr wichtig, eines zu beherrschen verschiedene Methoden zum Anzeigen von Protokollen.
Es gibt viele Befehle zum Anzeigen von Protokollen unter Linux: tail, cat, tac, head, echo usw. In diesem Artikel werden nur einige gängige Methoden vorgestellt.
Befehlsformat: tail[erforderliche Parameter][Parameter auswählen][Datei]
<br>tail[必要参数][选择参数][文件]
<br>
-f 循环读取
-q 不显示处理信息
-v 显示详细的处理信息
-c3614180660cacc92788ac4f21b0f27ec 显示的字节数
-n1dcc53fc8cc7b2478796660caa67152b 显示行数
-q, --quiet, --silent 从不输出给出文件名的首部
用法如下:
tail -n 10 test.log 查询日志尾部最后10行的日志; tail -n +10 test.log 查询10行之后的所有日志; tail -fn 10 test.log 循环实时查看最后1000行记录(最常用的)
一般还会配合着grep用,例如 :
tail -fn 1000 test.log | grep '关键字'
如果一次性查询的数据量太大,可以进行翻页查看,例如:
tail -n 4700 aa.log |more -1000 可以进行多屏显示(ctrl + f 或者 空格键可以快捷键)
跟tail是相反的head是看前多少行日志
head -n 10 test.log 查询日志文件中的头10行日志; head -n -10 test.log 查询日志文件除了最后10行的其他所有日志;
head其他参数参考tail
cat 是由第一行到最后一行连续显示在屏幕上
最常用的:cat -n filename |grep "关键字"
其他情况:
cat app.log | grep -C 5 '关键字'
(显示日志里匹配字串那行以及前后5行)
cat app.log | grep -B 5 '关键字'
(显示匹配字串及前5行)
cat app.log | grep -A 5 '关键字'
是追加。千万不要弄混了。cat
其他参数参考tail
<br>
more
命令是一个基于vi
编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作。more
名单中内置了若干快捷键,常用的有H(获得帮助信息),Enter
(向下翻滚一行),空格(向下滚动一屏),Q
(退出命令)。more
命令从前向后读取文件,因此在启动时就加载整个文件。
该命令一次显示一屏文本,满屏后停下来,并且在屏幕的底部出现一个提示信息,给出至今己显示的该文件的百分比:–More–(XX%)
more
的语法:more 文件名
Enter
向下n
行,需要定义,默认为1行
Ctrl f
向下滚动一屏
空格键 向下滚动一屏
Ctrl b
返回上一屏
=
输出当前行的行号
:f
输出文件名和当前行的行号
v
调用vi编辑器
!
命令 调用Shell
,并执行命令
q
退出more
这个命令可以查找日志文件特定的一段 , 根据时间的一个范围查询,可以按照行号和时间范围查询
按照行号
sed -n '5,10p' filename 这样你就可以只查看文件的第5行到第10行。
按照时间段
sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log
less命令在查询日志时,一般流程是这样的
less log.log shift + G 命令到文件尾部 然后输入 ?加上你要搜索的关键字例如 ?1213 按 n 向上查找关键字 shift+n 反向查找关键字
less与more类似,使用less可以随意浏览文件,而more仅能向前移动,不能向后移动,而且 less 在查看之前不会加载整个文件。 less log2013.log 查看文件 ps -ef | less ps查看进程信息并通过less分页显示 history | less 查看命令历史使用记录并通过less分页显示 less log2013.log log2014.log 浏览多个文件
常用命令参数:
less与more类似,使用less可以随意浏览文件,而more仅能向前移动,不能向后移动,而且 less 在查看之前不会加载整个文件。 less log2013.log 查看文件 ps -ef | less ps查看进程信息并通过less分页显示 history | less 查看命令历史使用记录并通过less分页显示 less log2013.log log2014.log 浏览多个文件 常用命令参数: -b <缓冲区大小> 设置缓冲区的大小 -g 只标志最后搜索的关键词 -i 忽略搜索时的大小写 -m 显示类似more命令的百分比 -N 显示每行的行号 -o <文件名> 将less 输出的内容在指定文件中保存起来 -Q 不使用警告音 -s 显示连续空行为一行 /字符串:向下搜索"字符串"的功能 ?字符串:向上搜索"字符串"的功能 n:重复前一个搜索(与 / 或 ? 有关) N:反向重复前一个搜索(与 / 或 ? 有关) b 向后翻一页 h 显示帮助界面 q 退出less 命令
/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 该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件
相关推荐:《Linux视频教程》
Das obige ist der detaillierte Inhalt vonWas ist der Befehl zum Anzeigen von Protokollen unter Linux?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!