前言
当我们要迁移大量的小文件的时候直接复制会非常慢,这时候我们会采取压缩包的方式。
Win => Linux(分卷)
Windows上文件太大 所以要分卷压缩,并在Linux上解压
这里提供两种方式,一种是使用tar,另一种是使用7z
- 使用tar的时候解压的时候要先合并文件,再解压,好处是Linux上不用下载软件。
- 7z的方式,可以直接解压,但是在Linux上需要先安装p7zip。
使用TAR(不推荐)
这种方式在解压前要进行合并,费时也占空间。
压缩
会生成这样的文件
上传到服务器上后
合并
合并的时候还是比较费时的
1 | cat test.tar.* >> test.tar |
解压
1 | tar -xvf test.tar |
解压后可以删除源文件
1 | rm -rf test.tar.* |
使用p7zip(推荐)
参看下文p7zip。
ZIP
压缩
1 | yum install -y zip |
解压缩
1 | yum install -y unzip |
分卷压缩
1 | yum install -y zip |
分卷解压缩
1 | unzip test02.zip |
TAR
解压tar.xz
这样的格式里层是tar打包方式 外面是xz压缩方式
所以解压可以分步进行
1 | xz -d ***.tar.xz |
也可以直接进行
1 | tar -Jxvf ***.tar.xz |
指定解压位置
1 | mkdir -p /data/tools |
参数解释:
tar
:这是命令的主体,是用于操作归档文件的工具,能够创建、提取和管理归档文件,支持多种压缩格式。-J
:表示使用 XZ 压缩算法来解压文件。XZ 是一种高效的压缩算法,通常能提供比传统的 gzip 和 bzip2 更高的压缩比。-x
:用于解包或解压操作,告诉tar
命令要从归档文件中提取文件。-v
:表示在解压过程中显示详细的信息,比如正在解压的文件名等,让用户了解解压的进度。-f
:用于指定要操作的归档文件名,后面紧跟要解压的文件名,在该命令中为ffmpeg-release-arm64-static.tar.xz
。这是必需的参数,用于明确操作的对象。-C /data/tools
:指定解压文件的目标目录,即将归档文件中的内容解压到/data/tools
目录下。如果该目录不存在,命令可能会执行失败,除非tar
命令有相应的创建目录选项。
解压tar.gz
解压到当前文件夹
1 | tar -zxvf ./libpng-1.5.15.tar.gz |
指定解压位置
1 | sudo tar zxvf bisheng-jdk-8u422-linux-aarch64.tar.gz -C /usr/local/jdk/ |
p7zip(推荐)
非常推荐这个工具,他是7-zip的Linux版本。
所以Windows上的压缩包,在Linux上都是可以解压的。
https://pkgs.org/download/p7zip
这里下载arm版本的
下载
1 | https://dl.fedoraproject.org/pub/epel/8/Everything/aarch64/Packages/p/p7zip-16.02-31.el8.aarch64.rpm |
安装
1 | yum localinstall -y p7zip-16.02-31.el8.aarch64.rpm |
压缩解压7Z
压缩
1 | 7za a test.7z ./test |
查看文件内容
1 | 7za l test.7z |
解压文件
1 | 7za x test.7z |
分卷压缩解压7Z
分卷压缩
1 | 7za a -v10m test2.7z ./test |
查看文件内容
1 | 7za l test2.7z.001 |
分卷解压
1 | 7za x test2.7z.001 |
解压或查看文件的时候只需要第一个文件就行。
压缩解压ZIP
压缩为zip
1 | 7za a -tzip test.zip ./test |
查看文件内容
1 | 7za l test.zip |
解压文件
1 | 7za x test.zip |
分卷压缩解压ZIP
分卷压缩
1 | 7za a -tzip -v10m test2.zip ./test |
查看文件内容
1 | 7za l test2.zip.001 |
分卷解压
1 | 7za x test2.zip.001 |
解压或查看文件的时候只需要第一个文件就行。