广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    tar打包split分割分解拆分大包文件

    来源:网络收集  点击:  时间:2024-08-05
    【导读】:
    tar打包split分割分解拆分大包文件,在工作中遇到一个任务,要求将录音文件打包并上传,单个上传文件最大1G,考虑后使用tar + split 实现。注:本次打包由于文件个数较多,使用 tar--files-from 参数。方法/步骤1/4分步阅读

    1、将需要打包的文件生成到列表文件,tar 时用于--files-from 参数。

    find 路劲 -type f -name *201907016*.mp3 路劲/列表文件名.list

    2/4

    2、使用tar 打包并分片 参数说明:-b 大小 -d使用数字后缀 -a 后缀长度。详细split参数说明见下图:

    tar -zcf - --files-from 路劲/列表文件名.list | split -b 1024m -d -a 4 - 分片文件名.gz.

    3/4

    3、测试打包文件是否能正常解压。

    cat 分片文件名.gz* | tar -xzv

    4/4

    4、完成后具体脚本部分展示。

    log start 开始生成${putDay} 日 list文件

    find ${baseData}/${putDay:0:4}/${putDay:4:2} -type f -name *${putDay}*.mp3 ${baseDataGz}/LIST_CRMSEND_4001_991_00_${putDay}_${retransmissionNumber}.list

    log end list文件生成结束

    log 根据生成的list文件将文件打包并拆分成500m大小

    log start 开始生成${putDay} 日 gz文件

    tar -zcf - --files-from ${baseDataGz}/LIST_CRMSEND_4001_991_00_${putDay}_${retransmissionNumber}.list | split -b 500m -d -a 4 - ${baseDataGz}/CRMSEND_4001_991_00_${putDay}_${retransmissionNumber}.gz.

    log 查看生成文件

    ls ${baseDataGz}/CRMSEND_4001_991_00_${putDay}_${retransmissionNumber}.gz*

    log end gz文件生成结束

    log start 生成清单汇总文件

    find ${baseDataGz} -type f -name CRMSEND_4001_991_00_${putDay}_${retransmissionNumber}.gz* | sed s/\/data\/ucp\/record\/ftpCrmsendGz\///g ${baseDataGz}/CRMSEND_4001_991_00_${putDay}_${retransmissionNumber}

    log end 清单汇总文件生成结束

    注意事项

    注意tar打包时命令中的空格

    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_1066777.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-07 19:12:42  耗时:0.023
    0.023s