较多时候我们在 linux 下使用 tar 打包文件夹,会出现打包后的文件过大,在文件 copy 过程中需要切片成较小文件。步骤:
- 先压缩,然后切片 **
打包命令:
#tar zcvf images.tar.gz ./images
切片命令
#split -b 1024M -d -a 1 images.tar.gz images.tar.gz.
说明:
命令最后的一个点 "." 不能丢了
-b 意思是切分片大小
-d 是切分后的包命名为 *.tar.gz.00 *.tar.gz.01 等这种数字结尾
- 压缩切片一起做 (也就是 1 的两步操作)**
命令
tar zcvf - ./images | split -b 1024M -d - images.tar.gz.
说明:
命令中包含的 "-" 不能丢失,并且横杠左右两边是有空格的。
命令最后的一个点 "." 不能丢了
- 合并,解压 **
合并命令
cat ./images.tar.gz.* > images.tar.gz
解压命令
tar zxvf images.tar.gz
说明:
在Linux中,可以使用split命令将大型文件分成多个较小的部分。该命令的基本语法如下所示:
split [选项] <输入文件> <前缀>
其中,<输入文件>
表示要进行分片处理的原始文件名;<前缀>
为生成的每个分片文件的前缀。
常用的选项包括:
-
-b
: 指定每个分片文件的字节数(默认单位为字节)。 -
-d
: 使用数字作为后缀而不是字母。 -
-a
: 设置后缀长度。 -
-l
: 按行数来切割文件。
举个例子,我们有一个名为file.txt的文件,想要将其分成10MB大小的分片文件,并保存到当前目录下,可以运行以下命令:
split -b 10M file.txt split_file
这样会生成类似于"split_fileaa", "split_fileab", ...等命名的分片文件。