Linux -- 项目中查找日志的常用Linux命令

1. 查看文件内容

cat: 显示整个文件内容 (适用于文件较小的)

bash 复制代码
cat logfile.txt

2. 查看文件的前N行

head: 默认显示前10行,可以指定行数

bash 复制代码
head -n 100 logfile.txt  # 显示前100行

3. 查看文件的后N行

tail: 默认显示最后10行,可以指定行数

bash 复制代码
tail -n 100 logfile.txt  # 显示最后100行

4. 实时查看日志更新

tail -f: 持续显示文件末尾内容,适用于监控实时日志

bash 复制代码
tail -f logfile.txt

5. 搜索特定内容

grep: 在文件中搜索指定的字符串

bash 复制代码
grep "error" logfile.txt

6. 组合命令

可以组合使用这些命令来实现更复杂的日志查看:(这个项目中可能比较常用)

bash 复制代码
# 查看包含"error"的最后100行
tail -n 100 logfile.txt | grep "error"

# 实时监控包含"warning"的新日志
tail -f logfile.txt | grep "warning"

# 查看最后20000行中的前200行
cat nd-server-error-2024-10-23.0.log | tail -n +20000 | head -n 200

7. 查找大文件

find: 搜索特定大小的日志文件

bash 复制代码
find /path/to/logs -type f -size +100M

8、more

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

9、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

10、less

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 命令

一般本人查日志配合应用的其他命令

复制代码
history // 所有的历史记录

history | grep XXX  // 历史记录中包含某些指令的记录

history | more // 分页查看记录

history -c // 清空所有的历史记录

!! 重复执行上一个命令

查询出来记录后选中 : !323

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 该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件

参考链接:

https://blog.csdn.net/muyekaola/article/details/143381834

https://cloud.tencent.com/developer/article/1579977

相关推荐
wljy12 分钟前
二、静态库的制作和使用
linux·c语言·开发语言·c++
mzhan01721 分钟前
Linux: coredump产生对程序退出的影响
linux·运维·服务器
利来利往38 分钟前
ubuntu设置永不休眠
运维·服务器
光电笑映44 分钟前
从环境变量到进程虚拟地址空间——Linux 内存管理的底层脉络
linux·服务器·c++·c
遇印记1 小时前
软考知识点
运维·服务器·网络
源远流长jerry1 小时前
Linux 网络收包机制:从网卡到 Socket 的完整路径
linux·运维·服务器·网络·网络协议·tcp/ip
qq_364371721 小时前
基于 Docker 容器化环境配置
运维·docker·容器
我命由我123452 小时前
Windows 操作系统 - Windows 查看架构类型
运维·windows·笔记·学习·系统架构·运维开发·系统
goyeer2 小时前
【ITIL4】34服务实践 - 服务请求管理
运维·it·数字化·信息化·itil·信息化企业管理
运维全栈笔记2 小时前
基于Docker的MinIO单机部署与功能测试指南
运维·docker·容器