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

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

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

1 split [OPTION] [INPUT [PREFIX]]

选项如下:

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

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

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

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

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

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

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

posted on 2014-10-11 09:34  复活的老羊  阅读(229)  评论(0编辑  收藏  举报

导航