zhoushuaiyin 2015-05-26
在很多时候,我们需要把一个较大的文件分割成若干个小文件,以方便操作,例如上传文件,发送电子邮件等。
在Linux中,可以使用split 命令来分割文件,具体格式为:split [options] file [prefix].
其中 options为可选参数, 最后一个参数prefix是为分割后的文件指定文件名前缀.
-b: 根据文件大小分割,分割后文件大小可以为:k (KB), M (MB), G (GB), c (byte), w (word)等...
-l: 根据行数来分割.
-d: 指定以数字为后缀.
-a length: 指定长度为length的后缀.
file: 待分割文件.
例如:
命令 split -b 20k example.txt -d -a 3 split_file
表示分割文件example.txt,每个文件大小为20k, 并且以分割后文件以split_file加三位数字为前缀命名.
运行前:
运行后:
可以看到,该命令分割文件example.txt, 运行命令后多出了四个以split_file加数字为前缀的文件,且分割出来的文件大小最大为20k.
如果想以行数分割文件,只需要把-b改为-l即可,下面命令把example.txt分割为多个文件,每个文件最多300行.
split -l 300 example.txt -d -a 3 split_file
得到所需要大小的文件后,我们就可以继续上传文件或发送邮件的操作了。