Linux命令之大文件切分与合并

当面临将一个大文件进行切分时,Linux的split命令是很好的选择。它包含多种参数,支持按行、大小进行切分。

split命令的语法如下:

split[–help][–version][-a][-b][-C][-l][要切割的文件][输出文件名前缀]

split [–help][–version][-a ][-b][-C ][-l ][要切割的文件][输出文件名前缀]

对应的参数描述如下:

-a, –suffix-length=N使用的后缀长度 (默认为 2)-b, –bytes=SIZE每个输出文件的字节大小-C, –line-bytes=SIZE每个输出文件每行的最大字节大小-d, –numeric-suffixes使用数字后缀代替字母后缀-l, –lines=NUMBER设定每个输出文件的行数–help 显示帮助信息–version显示版本信息

下面举几个例子:

1)将文件splitTest.txt分割成多个文件,分割后的每个文件大小为10M。命令:

$ split -b 20m splitTest.txt$ lssplitTest.txt xaa xab xac

2)将文件splitTest.txt分割成多个文件,分割后的每个文件大小为10M。指定分割后的文件前缀位split,命令:

$ split -b 20m splitTest.txt split$ lssplitaa splitab splitac splitTest.txt

3)将文件splitTest.txt分割成多个文件,每个文件50万行。命令:

$ wc -l splitTest.txt 1502216 splitTest.txt$ split -l 500000 splitTest.txt split$ lssplitaa splitab splitac splitad splitTest.txt

4)将文件splitTest.txt分割成多个文件,每个文件50万行。指定分割后的文件后缀为数字,数字位数为3位,,命令:

$ wc -l splitTest.txt 1502216 splitTest.txt$ split -l 500000 -d -a 3 splitTest.txt split$ lssplit000 split001 split002 split003 splitTest.txt

可以使用cat命令将切分后的文件合并成新的文件:

$catsplit0*>original.txt

本文永久更新链接地址:

观今宜鉴古,无古不成今。

Linux命令之大文件切分与合并

相关文章:

你感兴趣的文章:

标签云: