Linux查看日志的指令

Linux系统上查看日志常用的指令有tail

tail

#查看日志最后300行的代码
tail -n 300 app.log 
#查看300行之后的日志 
tail -n +300 app.log 
#动态实时查询最后300的日志
tail -fn 300 app.log
#动态实时查看日志
tail -f app.log

head

和tail是相反,head是看前多少行日志

#查看前300行的日志
head -n 300 app.log
#查看最后300行之前的所有日志
head -n +300 app.lpg

cat

第一行到最后一行连续显示在屏幕上
PS:>是创建, >>是追加

#一次性显示所有的文件
cat app.log
#键盘创建一个文件
cat > file.txt
#几个文件合并成一个文件
cat file1 file2 > file
#将一个日志文件的内容追加到另一个文件的后面
cat -n file1 > file2
# 清空日志文件
cat : >textfile2

sed

这个命令可以查找日志文件特定的一段 , 根据时间的一个范围查询,可以按照行号和时间范围查询

sed -n '5,10p' f #ilename 这样你就可以只查看文件的第5行到第10行。
sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p'  test.log

more

Linux more 命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似)

more file
#从第20行显示
more +20 file

Enter 向下n行,需要定义。默认为1行
Ctrl+F 向下滚动一屏
空格键 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
V 调用vi编辑器
!命令 调用Shell,并执行命令
q 退出more

less

less 与 more 类似,less 可以随意浏览文件,支持翻页和搜索,支持向上翻页和向下翻页。

ctrl + F - 向前移动一屏
ctrl + B - 向后移动一屏
ctrl + D - 向前移动半屏
ctrl + U - 向后移动半屏
j - 下一行
k - 上一行
G - 移动到最后一行
g - 移动到第一行
q / ZZ - 退出 less 命令

向前搜索

先输入/,再加搜索关键字,如 /getName,则会高亮显示关键字getName内容,按n : 向后查找下一个匹配的关键字的内容,shift+n : 向后查找前一个匹配的文本;

向后搜索

先输入?,再加搜索关键字,如 /getName,则会高亮显示关键字getName内容,按n : 向前查找下一个匹配的关键字的内容,shift+n : 向后查找后一个匹配的文本;

### Linux查看日志文件的命令 对于大尺寸的日志文件,直接使用 `vi` 编辑器打开可能不是最佳选择。此时可以利用 Linux 的一些内置命令来高效地浏览和分析这些日志文件[^1]。 #### 使用 Tail 命令 Tail 命令允许用户查看文件的最后一部分数据,并支持实时更新功能。例如: - 显示文件最后 10 行的内容可以通过执行 `tail -n 10 test.log` 来实现; - 若要持续监视新增加的数据,则可运行带有 `-f` 参数的形式如 `tail -100f test.log` ,这会动态展示最新的 100 行记录[^2]。 #### 利用 Head 工具 Head 和 Tail 功能相对立,前者用来读取文档开头指定数量的行数。具体操作如下所示: - 获取前 10 行的信息只需输入 `head -n 10 test.log`; - 如果想排除掉最末端若干行之外的所有内容,比如除去最近的 10 行以外的部分,那么应该采用 `head -n -10 test.log` 这样的语句结构。 #### Cat 及其变体 Tac Cat 主要用于连接并打印多个文件或者单个文件到标准输出设备上。Tac 是 Cat 的逆向版本,意味着它能够按照相反顺序逐行呈现文本资料。当配合管道符与其他工具组合运用时,能更灵活地处理特定需求,像这样查找含有 "debug" 关键词的日志条目:`cat -n test.log | grep "debug"` 或者直接通过 tac 完成相同任务 `tac test.log | grep "debug"`。 另外一种常见的做法就是结合 cat 和 tail 来获取较大的日志片段,例如 `cat mylog.log | tail -n 1000` 将返回名为 mylog.log 文件结尾处的一千行文字[^3]。 #### 高级查询方式 为了定位包含某些关键词附近上下文中出现过的日志项,还可以借助于其他高级选项或额外软件包完成更加复杂的过滤工作。例如,想要找到某个应用程序(app.log)中靠近给定位置前后一定范围内匹配模式的结果,就可以考虑使用类似这样的表达式 `tail -n 20 app.log` (显示app.log最后20行),或者是从第五行起始直到结束都予以展现出来 `tail -n +5 app.log`[^4]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值