一、关于

    在Linux下,切割和合并文件可以使用split和cat命令来实现。


二、文件切割
        文件切割模式分为两种:文本文件和二进制模式。
    1、文本模式
            文本模式只适用于文本文件,用这种模式切割后的每个文件都是可读的。文本模式又分为两种:按最大文件大小切割和按文本行数切割。

        1)按文件大小切割

                split -C 50k log.log splog

            将文本文件log.log按每块最大50k的大小进行切割,不打碎行。输出文件名类似splogaa, splogab…… 

        2)按文本行数切割

                split -l 100 log.log splog

            每个分块100行,不考虑大小。日志分析时应该有用。

    2、二进制模式

                split -b 50k log.log splog

        每个分块(当然,最后一个不保证)大小都是50k,基本不可读。任何类型文件都可以用这种切割模式。

三、文件合并

    不管用什么方式切割,合并方法不变。

        cat splog* >newLog.log


四、补充说明
    split 参数:

        -a:指定输出文件名的后缀长度,默认为2个(aa,ab...)

        -d:指定输出文件名的后缀用数字代替

        -b:指定输出文件的最大字节数,如1k,1m...
        -C:指定每一个输出文件中单行的最大字节数

        -l:指定每一个输出文件的最大行数

 

五、参考资料

     http://www.2cto.com/os/201203/124813.html