Linux切割与合并文件
2019-09-26 本文已影响0人
不爱吃饭的小孩怎么办
大文件即使压缩后也非常庞大,需要切割进行传输,到目标主机上再进行合并。
切割命令:
split 50M BigData.dat spBigData.dat
会根据文件大小生成 spBigData.dataaa、spBigData.dataab、spBigData.dataac、spBigData.dataad......
合并命令:
cat spBigData.data* > BigData.data
根据行数进行切割,针对日志或者文本类文件比较好,但其实文本类文件最好压缩后传送,压缩后又变成了二进制文件,所以split直接按文件大小进行切割最实用。
其它参数,比如控制后缀长度:
** -a, --suffix-length=N
使用的后缀的长度,默认长度为2,例如'aa','ab'等后缀,其长度就是2。上面的如果不指定4,就会报错 Output file suffixes exhausted
**
-b, --bytes=SIZE
指定每个输出文件片段的大小。
-C, --line-bytes=SIZE
指定每个输出文件片段的最大行字节。
-d, --numeric-suffixes
指定输出文件片段后缀为数字而不是默认的字母形式。
-l, --lines=NUMBER
指定每个输出文件片段的行数。
比如按两万行进行拆封,可以最多支持2W*10000行记录:
split -d -l 20000 -a 4 big/custr.del small/custr.del_