首页 > 代码库 > Linux(CentOS)用split命令分割文件

Linux(CentOS)用split命令分割文件

在 Linux 里,稍加不注意有可能会产生很大体积的日志文件,哪怕几百M,拖下来分析也很浪费时间,这个时候,如果可以把文件切割成 N 个小文件,拿最后一个文件就可以看到最近的日志了。有一些手段,比如用 shell 把日志按每天生成等等,但是不是这里的讨论范围。利辛县档案局

CentOS 里切割大文件的命令如下:

view source
 
print?
1split [OPTION] [INPUT [PREFIX]]

选项如下:

  • -a : 指定后缀长度
  • -b : 每个文件多少字节
  • -d : 使用数字后缀而不是字母
  • -l : 指定每个文件的行数

比如我想让后缀长度为 2,即 -a 2。用数字后缀 -d。每个文件 10M,即 -b 10m。命令可以设计如下:

view source
 
print?
1split -a 2 -d -b 10m /var/lib/mysql/general.log nowamagic

会在 /root 文件夹下生成下面的切割文件:

view source
 
print?
01nowamagic00
02nowamagic01
03nowamagic02
04nowamagic03
05nowamagic04
06nowamagic05
07nowamagic06
08nowamagic07
09nowamagic08
10nowamagic09

除了最后一个文件不是10M(有可能恰好10M,不过几率很小),其它都是。

很好懂,这里记录一下,方便有需要的人。

Linux(CentOS)用split命令分割文件