在 Linux 里,稍加不注意有可能会产生很大体积的日志文件,哪怕几百M,拖下来分析也很浪费时间,这个时候,如果可以把文件切割成 N 个小文件,拿***一个文件就可以看到最近的日志了。有一些手段,比如用 shell 把日志按每天生成等等,但是不是这里的讨论范围。
CentOS 里切割大文件的命令如下:
- split [OPTION] [INPUT [PREFIX]]
选项如下:
- -a : 指定后缀长度
- -b : 每个文件多少字节
- -d : 使用数字后缀而不是字母
- -l : 指定每个文件的行数
比如我想让后缀长度为 2,即 -a 2。用数字后缀 -d。每个文件 10M,即 -b 10m。命令可以设计如下:
- split -a 2 -d -b 10m /var/lib/mysql/general.log nowamagic
会在 /root 文件夹下生成下面的切割文件:
- nowamagic00
- nowamagic01
- nowamagic02
- nowamagic03
- nowamagic04
- nowamagic05
- nowamagic06
- nowamagic07
- nowamagic08
- nowamagic09
除了***一个文件不是10M(有可能恰好10M,不过几率很小),其它都是。
很好懂,这里记录一下,方便有需要的人。