Linux中使用tar将大文件压缩为多个小的压缩包
发表于:2021-11-26 | 分类: IT
字数统计: 352 | 阅读时长: 1分钟 | 阅读量:

在GitHub上传文件时,单个文件不允许超过100m,超过的话需要使用Git Large File Storage,操作起来稍有些复杂,而且我记得也有限制。在这里我们可以将大文件压缩并切片,使之被分割为多个小文件,再上传GitHub,下载之后再合并即可。

  • 压缩

    假设有个大文件CAZy.faa,原始大小为725m,压缩后为135m,因此我们可以将其压缩为2~3个文件 即可避免100m的限制。建议上传至GitHub的单个文件大小不要超过50m,因此我们以50m为阈值对文件进行切割(参数-b)。

    1
    tar czf - CAZy.faa | split -b 50m - CAZy.faa.tar.gz

    运行命令后,得到了3个文件:CAZy.faa.tar.gzaa,CAZy.faa.tar.gzab,CAZy.faa.tar.gzac。

  • 解压

    通过如下命令解压后可以得到完整的CAZy.faa文件。

    1
    cat CAZy.faa.tar.gz* | tar -xzv
  • 在Windows下解压

    1
    2
    3
    # 先合并,再用压缩软件解压
    ## 按“win+r”键,在弹出的输入框中输入“cmd”进入windows下的命令提示符界面。切换路径,如进入F盘,直接输入“F:”,再进入F盘的xin文件夹输入“cd xin”,输入以下命令进行合并(注意,用的是cmd而不是powershell):
    copy /b CAZy.faa.tar.gza* CAZy.faa.tar.gz

参考

上一篇:
宏病毒组分析流程1-VirSorter2
下一篇:
R语言绘制分组条形图