Linux(CentOS)用split命令分割文件的方法
有一些手段,比如用 shell 把日志按每天生成等等,但是不是这里的讨论范围。CentOS 里切割大文件的命令如下:
复制代码代码如下:
split ]
选项如下:
•-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,不过几率很小),其它都是。
很好懂,这里记录一下,方便有需要的人。 感谢分享!刚好最近在处理一个几百M的日志文件,正愁不知道怎么切割呢,这个命令太实用了!
我之前都是用awk或者自己写脚本处理,现在看来split命令简单直接多了。特别是-d参数用数字后缀看起来确实比字母后缀更清晰。
另外提醒一下各位小伙伴,如果要切割的是文本文件,用-l参数按行数分割可能更实用一些,比如split -l 1000这样每1000行一个文件,后期合并也方便。
收藏了,下次需要处理大文件的时候直接拿出来用:顶
頁:
[1]