为了解决上传网盘时单文件大小限制,或向某某公司邮箱发送文件时的文件大小限制,我们常常需要将较大的文件拆分成多个在限制大小内的小文件,进行传输后,在使用端再将多个小文件合并为一个完整的大文件进行使用。
使用 zip 命令压缩文件
- 使用 zip 命令压缩文件,并结合 split 命令来分卷:
zip - <file_name> | split -b <max_size>
上述命令将名为file_name的文件压缩成 zip 包并分成不超过max_size的文件,分解后文件名默认是x*
,后缀为 2 位 a-z 字母,如 aa、ab。
其中,split命令如下:
split [-a] [-b] [-C] [-l] [要分割的文件名] [分割后的文件名前缀]
–version 显示版本信息
– 或者-l,指定每多少行切割一次,用于文本文件分割
-b 指定切割文件大小,单位 m 或 k
-C 与-b类似,但尽量维持每行完整性
-d 使用数字而不是字母作为后缀名
-a 指定后缀名的长度,默认为2位
例如:
#把 wm6.dmg 这个文件以 wm6.dmg. 开头,按1024m大小进行分割
split -b 1024m wm6.dmg wm6.dmg.
- 要合并已分解的文件,可使用cat命令恢复成 zip 文件后使用 unzip 或其它主流解压软件解压,命令如下:
cat <files_name_1> <files_name_2> <files_name_3> > <files_name>
意思是把files_name_1、2、3这三个文件进行合并,合并(创建)成一个叫files_name的文件;
例如:
cat x* > file.zip
使用 tar 命令压缩文件
-
使用 tar 命令来创建压缩文件,如:
tar czvf - <file_name> | split -b <max_size>
-
使用 tar 解压:
cat x* | tar xzvf -
网友评论