1、前言

在使用服务器过程中,难免要传输大型模型软件,由于各种限制,需要把几个g的文件切割为几百M的文件,此时可以使用linux自带的命令split

2、split使用

split:可以将一个大文件分割成很多个小文件,有时需要将文件分割成更小的片段,比如为提高可读性,生成日志

语法:split(选项)(file)PREFIX

选项:

-b:值为每一输出档案的大小,单位为 byte。

-C:每一输出档中,单行的最大 byte 数。

-d:使用数字作为后缀。

-l:值为每一输出档的列数大小。

PREFIX:代表前导符,可作为切割文件的前导文件。

实例:

1) 有个11M的logs,需要切割成1M大小的文件

split -b 1m logs

linux split切割文件和合并文件_Linuxlinux split切割文件和合并文件_Linux_02

2) 文件分割成多个带有字母的后缀文件,如果想用数字后缀可使用-d参数,同时可以使用-a length来指定后缀的长度:

split -b 1m logs -d -a 2

linux split切割文件和合并文件_Linux_03

3) 为分割后的文件指定文件名的前缀:

split -b 1m logs -d -a 2 file_split

linux split切割文件和合并文件_Linux_04

4) 使用-l选项根据文件的行数来分割文件,例如把文件分割成每个包含100行的小文件

split -l 100 logs

linux split切割文件和合并文件_Linux_05

5) 文件切割后并移动到对应的目录,需要对文件合并得到原文件(PS:传输文件注意验证md5)

cat x* >> log
diff -r log logs

linux split切割文件和合并文件_Linux_06

diff后无输出,说明2个文件一致