• unzip解压失败 添加tar 解压


    [root@localhost soft]# unzip QY.zip 
    Archive:  QY.zip
      End-of-central-directory signature not found.  Either this file is not
      a zipfile, or it constitutes one disk of a multi-part archive.  In the
      latter case the central directory and zipfile comment will be found on
      the last disk(s) of this archive.
    unzip:  cannot find zipfile directory in one of QY.zip or
            QY.zip.zip, and cannot find QY.zip.ZIP, period.
    

    刚开始以为是压缩包文件部分信息丢失,导致解压出错了,不应该呀,怎么会出错呢,,emmmm,还是感觉不对劲,于是Google了下:

    1. 一般在linux下解压zip文件,直接用系统默认的extract here进行解压(默认使用的是 unzip)
    2. 如果压缩文件.zip是大于2G的,那unzip就无法使用了,这是由于C库中long类型数据所能表示的文件偏移在32位机子上只能有2G
    3. 所以如果要解压大文件,可以使用7zip来解压
    • 如果执行make命令时,提示安装g++的话,请执行 yum install gcc-c++

    • 出现 tar (child): bzip2: Cannot exec: No such file or directory,请安装yum install bzip2 -y

    发现yum install p7zip -y 也可以安装    

    ./install.sh /usr/local/bin /usr/local/lib/p7zip /usr/local/man /usr/local/share/doc/p7zip 
    - installing /usr/local/bin/7za
    - installing /usr/local/man/man1/7z.1
    - installing /usr/local/man/man1/7za.1
    - installing /usr/local/man/man1/7zr.1
    - installing /usr/local/share/doc/p7zip/README
    - installing /usr/local/share/doc/p7zip/ChangeLog
    - installing HTML help in /usr/local/share/doc/p7zip/DOC

    7z命令的使用

    解压缩7z文件

    7za x test.zip -r -o./

    参数含义:

    • x 代表解压缩文件,并且是按原始目录树解压(还有个参数 e 也是解压缩文件,但其会将所有文件都解压到根下,而不是自己原有的文件夹下)
    • test.zip 是当前目录下的压缩文件,这里用做测试文件
    • -r 表示递归解压缩所有的子文件夹
    • -o 是指定解压到的目录,-o后是没有空格的,直接接目录(-o./ 为当前目录)

    压缩文件/文件夹

    7za a -t7z -r test.7z /opt/test/*
    
    • 1

    参数含义:

    • a 代表添加文件/文件夹到压缩包
    • -t 是指定压缩类型,这里定为7z,可不指定,因为7za默认压缩类型就是7z
    • -r 表示递归所有的子文件夹
    • test.7z 是压缩好后的压缩包名
    • /opt/test/* 是压缩目录

    注意:7za不仅仅支持.7z压缩格式,还支持.zip.、tar、.bz2等压缩类型

    unzip解压失败可归结为是压缩格式不对

    tar包压缩和tar解压失败有遇到的吗、???

     “tar czvf /mnt/etc-$(date +%F-%T).tar.zg   /etc/*”

    这个没有错,可以解压

    tar czvf /mnt/etc-$(date +%F-%T).tar.zg   /root/22/

    tar czf 33/$(date +%F).tar.gz 22

    tar czf 33/$(date +%T).tar.gz 22/

    都会出现 压缩包可以完成,但是解压不行

    出现报错 不能解压

  • 相关阅读:
    Assembly Manifest 通俗简易手册
    CruiseControl服务器安装配置
    关于URL编码
    从A到Z来说说Web开发
    通过注册表查看 .NET Framework的版本信息
    云数据存在哪里?
    C#中你可能不知道的8件事(zz)
    用PBKDF2 或BCrypt 来存储密码
    C++编译器什么时候为我们自动生成拷贝构造函数?
    C#中你可能不知道的8件事(zz)
  • 原文地址:https://www.cnblogs.com/kesz/p/10763187.html
Copyright © 2020-2023  润新知