Linux 大日志文件按时间查询与分割处理

按时间查看日志

日志文件有40G:

sed -n '/2020-05-02 15:00:/,/2020-05-02 15:05:/p' catalina.out > 20200502.log

大文件分割

split命令操作

[root@iZ2ze2pmuviyporobybycvZ ~]# split --help
Usage: split [OPTION]... [INPUT [PREFIX]]
Output fixed-size pieces of INPUT to PREFIXaa, PREFIXab, ...; default
size is 1000 lines, and default PREFIX is 'x'.  With no INPUT, or when INPUT
is -, read standard input.
 
Mandatory arguments to long options are mandatory for short options too.
  -a, --suffix-length=N   generate suffixes of length N (default 2)
      --additional-suffix=SUFFIX  append an additional SUFFIX to file names
  -b, --bytes=SIZE        put SIZE bytes per output file
  -C, --line-bytes=SIZE   put at most SIZE bytes of lines per output file
  -d, --numeric-suffixes[=FROM]  use numeric suffixes instead of alphabetic;
                                   FROM changes the start value (default 0)
  -e, --elide-empty-files  do not generate empty output files with '-n'
      --filter=COMMAND    write to shell COMMAND; file name is $FILE
  -l, --lines=NUMBER      put NUMBER lines per output file
  -n, --number=CHUNKS     generate CHUNKS output files; see explanation below
  -u, --unbuffered        immediately copy input to output with '-n r/...'
      --verbose           print a diagnostic just before each
                            output file is opened
      --help     display this help and exit
      --version  output version information and exit
 
SIZE is an integer and optional unit (example: 10M is 10*1024*1024).  Units
are K, M, G, T, P, E, Z, Y (powers of 1024) or KB, MB, ... (powers of 1000).
 
CHUNKS may be:
N       split into N files based on size of input
K/N     output Kth of N to stdout
l/N     split into N files without splitting lines
l/K/N   output Kth of N to stdout without splitting lines
r/N     like 'l' but use round robin distribution
r/K/N   likewise but only output Kth of N to stdout
 
GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
For complete documentation, run: info coreutils 'split invocation'

按文件行数分割

catalina.out 按50000分割一个文件:

split -l 50000 -d --verbose catalina.out base-split-name
 
#输出
base-split-name00
base-split-name01
base-split-name02
......

按文件大小分割

除了按照行数切割之外,split还支持通过文件大小进行切割,通过指定-b参数指定文件大小进行切割,文件大小单位支持K, M, G, T, P, E, Z,如下以切割为500M演示文件切割过程。

split -b 500M -d --verbose catalina.out base-split-name
 
#输出
base-split-name00
 
......

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/10946

(0)
凯影的头像凯影
上一篇 2024年1月5日 下午3:46
下一篇 2024年1月9日 下午3:49

相关推荐

  • 内网穿透-linux NPS 服务端+客户端安装(详细版)

    一、下载安装包 1、官方下载 官方下载地址:https://github.com/ehang-io/nps/releases注意不要下错了,当前我下的版本为 v0.26.10 2、下载站下载 https://down.cnaaa.net/static/upload/other/20221220/1671519578293369.rar 二、服务端安装 访问公…

    2022年12月20日
    5.8K00
  • HBase 详细图文介绍

    一、HBase 定义 Apache HBase™ 是 以 hdfs 为数据存储的 ,一种分布式、可扩展的 NoSQL 数据库。 二、HBase 数据模型 HBase 的设计理念依据 Google 的 BigTable 论文,论文中对于数据模型的首句介绍 。Bigtable 是一个稀疏的 、 分布式的 、 持久的多维排序 map 。之后对于映射的解释如下:该映…

    2023年12月15日
    1.0K00
  • 关于编码你必须知道的知识和技巧

    乱码问题是所有运维职业生涯中都会遇到的问题,本篇文章带你探究背后的原理以及解决的技巧 字符编码 我们知道计算机只认识二进制数据,其他格式的数据都需要转换成二进制才能被计算机处理,也就是说我们在计算机上看到的文本、视频、可执行程序等格式的文件,最终都会转换成二进制数据交给计算机处理 计算机中最小的数据单位是bit,也叫二进制位,每一个bit都有0和1两种状态,…

    2023年1月16日
    1.4K00
  • MySQL5.7主从同步、读写分离

    MySQL5.7主从同步、读写分离 安装MySQL5.7 下载rpm包 安装 启动mysql查看密码 登录mysql 主从同步 关闭每台服务器的防火墙和selinux 主从服务器时间同步 主服务器使用本地时钟源 修改配置文件 开启ntpd 从服务器同步主服务器时间 安装ntp工具 启动ntp和主服务器进行时间同步 主服务器mysql配置 修改配置文件 重启m…

    2022年7月31日
    1.8K00
  • 在 Kubernetes 上最小化安装 KubeSphere

    除了在 Linux 机器上安装 KubeSphere 之外,您还可以将其直接部署在现有的 Kubernetes 集群上。本快速入门指南将引导您完成在 Kubernetes 上最小化安装 KubeSphere 的一般性步骤。 准备工作 备注 部署 KubeSphere 确保您的机器满足安装的前提条件之后,可以按照以下步骤安装 KubeSphere。 执行以下命…

    2023年4月18日
    1.2K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信