百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术分类 > 正文

Linux日志相关命令—查看\关键词查询\截取\日志压缩备份

ztj100 2025-05-02 14:52 4 浏览 0 评论

一、查看

1、动态日志查看。
说明:程序启动可以动态查看运行日志。

tail  -f  文件名.log

2、显示最后100行
说明:动态日志没有写入的时候,可以用该命令查询最后的几行

tail  -100f 文件名

二、关键词查询

常用(可记住):

cat -n nohup.out | grep "关键词"
//查询显示包括关键词的(A前B后C前后)几行
cat -n nohup.out |grep '关键词' -A 2   
//关键词行号的+几行之后,-几行之前
more  +行号  文件名     

1、关键字普通查询

说明:会查询日志文件中涉及关键词的那一行,并显示出来,关键词在日志中出现太多就不好定位。

cat nohup.out | grep "关键词"



2、关键字搜索并显示行号

说明:搜索出关键字内容且显示关键字所在行, n参数为显示行号

cat -n nohup.out | grep "关键词"



3.按照关键字搜索并包含前(后)多少行

cat -n nohup.out |grep '关键词' -A 2

说明:
-A 表示关键字之后,After
-B 表示关键字之前,Before
-C 表示关键字前后,Context

案例:查询关键词后面2行一起显示。



4.根据关键字所在行号,查看第N行前面或者后面的日志

more +行号 文件名,查看后面的数据,q退出
more -行号 文件名,查看前面的数据,q退出

more  +行号  文件名

(1)定位到18行,从18行查看后面的日志。



(2)查询18行之前的日志



5.根据关键字所在行号,显示后面的几行

cat nohup.out | tail -n +第几行开始| head -n 显示几行

案例:从18行开始,显示30行



三、截取

1.先了解>和>>

清空c文件写入

tail -10 b.txt > c.txt 

追加写入到c文件

tail -10 b.txt >> c.txt

2.截取几行到几行的数据,写入到文件

sed -n ‘10000,20000p’ nohup.out> test.log

3.其他相关sed命令

1.history命令写入到1.text

history >1.txt

2.把1.txt文件中写入到2.txt,第1到3行不写入。

 sed '1,3d' 1.txt >2.txt

结果:1到3行没在了。相当于文件1中的几行不需要写入到文件2,使用该命令。
3.删除第文件中1到3行

 sed  -i '1,3d' 1.txt

4.截取最后几行写入到另外一个文件

 tail -100000 nohup.out > b.txt

5.截取时间内容到另外一个文件

grep  '2023-03-17 14:57 >a.txt

四、定时日志压缩备份

1.编写log_backup.sh 压缩日志文件

[root@localhost logs]# cd /root/
[root@localhost ~]# ls
 log_backup.sh 
[root@localhost ~]# cat log_backup.sh 
cd /home/user01/java/project/
tar tar czf `date +"%Y-%m-%d"`.tar.gz nohup.out
sleep 1
cat /dev/null > nohup.out

2.写入到crontab相关定时任务命令

写入编辑命令:crontab -e
查看命令:crontab -l

[root@localhost logs]# crontab -l
*/20 * * * * /sbin/ntpdate -u 10.30.24.21 > /dev/null 2>&1
59 23 * * * /root/log_backup.sh

相关推荐

Java 8 新特性全面解读:解锁现代编程的魅力

Java8新特性全面解读:解锁现代编程的魅力Java8作为Java语言发展史上里程碑式的版本,不仅带来了诸多新特性,更深刻地改变了我们编写代码的方式。无论是简洁的Lambda表达式,还是强大的S...

教程:克隆公司饭卡 然后优雅地“蹭饭”

最近借了Proxmark3来娱乐性的玩下RFID技术,工资甚低的我只好拿公司饭卡实验,优雅地蹭几顿。物业大叔表打我啊!以下操作纯属学习目的,初学难免错误较多,望斧正。首先了解M1卡的结构:请参考htt...

新课标高中教材1030个短语大汇总(高中新课标英语词汇)

1.anamountof+不可数名词许多...

看完这篇文章你就懂 AQS 了(赛科龙aqs401参数详情)

前言谈到并发,我们不得不说AQS(AbstractQueuedSynchronizer),所谓的AQS即是抽象的队列式的同步器,内部定义了很多锁相关的方法,我们熟知的ReentrantLock、Ree...

Java 8新特性全面解析:开启现代化编程之旅

Java8新特性全面解析:开启现代化编程之旅Java8作为Java语言发展历程中的重要里程碑,在2014年正式发布。它的到来标志着Java从传统面向对象编程向支持函数式编程迈进的重要一步。在这一版...

Java 8新特性全面剖析:让代码更优雅、更高效

Java8新特性全面剖析:让代码更优雅、更高效Java8,作为Java语言发展史上的一座里程碑,带来了众多令人振奋的新特性。这些新特性不仅极大地提升了开发效率,还让代码变得更优雅、更简洁。今天,我...

线程安全编程方法总结(线程安全编程方法总结)

保护线程安全是多线程编程中的核心问题,关键在于控制共享资源的访问并协调线程间的执行顺序。以下是常用的基本方法及其适用场景:1.互斥锁(MutexLocks)机制:通过锁(如synchronize...

考勤数据标准化处理(考勤标准化管理制度)

经常做考勤的同学有没有遇到过这样的考勤数据呢?没错,从考勤机里导出来的,要统计那叫一个麻烦啊(有同学说可以导出txt文件,然后再处理会省事很多,有条件的小伙伴可以自己研究研究)看这表格数据其实挺规范的...

SQL语句大全,所有的SQL都在这里(sql语句百度百科)

一、基础1、说明:创建数据库CREATEDATABASEdatabase-name2、说明:删除数据库dropdatabasedbname3、说明:备份sqlserver---创建备份数...

手搓Agno智能体使用Ollama模型(ollama本地智能体)

轻量化智能体开源框架Agno有兴趣了解WhatisAgno-Agno安装python3.12...

高级排序算法之快速排序(高效排序)

前言今天继续算法学习,本次学习的是高级排序之快速排序。本文代码部分存在调用公共方法,可在文章:...

Linux cmp 命令使用详解(linux常用命令cp)

简介Linux中的...

N张图告诉你K-DB为什么能全面兼容Oracle?

不是每一款数据库都能全面兼容Oracle,就像不是所有数据库都可以被称之为K-DB。一般数据库能做到的SQL标准和函数上兼容Oracle,而K-DB则能实现更多,在数据库体系架构、集群方式、数据库对象...

12. Langchain评估与调试:用LangSmith优化模型表现

引言:从"感觉不错"到"数据说话"2025年某电商平台通过LangSmith系统化的评估优化,将客服机器人的问题解决率从68%提升至92%。本文将详解如何用...

那些有用但不为大家所熟知的 Java 特性

本文最初发表于PiotrMińkowski的个人站点Medium网站,经作者授权,由InfoQ中文站翻译分享。...

取消回复欢迎 发表评论: