zoukankan      html  css  js  c++  java
  • 解压.tar.gz出错gzip: stdin: not in gzip format tar: /Child returned status 1 tar: Error is not recoverable: exiting now

    最近研究shell编程,需要下载解压一些.tar.gz的文件,但经常遇到解压失败的情况:

    [root@xxxxxxx ~]# tar -jxvf tcl8.4.16-src.tar.gz 
    bzip2: (stdin) is not a bzip2 file.
    tar: Child returned status 2
    tar: Error is not recoverable: exiting now
    

    今天仔细研究了一下,如何解决这个问题:

    1. 先查看文件真正的属性是什么?

    [root@xxxxx ~]# tar -zxvf tcl8.4.16-src.tar.gz 
    
    gzip: stdin: not in gzip format
    tar: Child returned status 1
    tar: Error is not recoverable: exiting now
    [root@xxxxxx ~]# file tcl8.4.16-src.tar.gz 
    tcl8.4.16-src.tar.gz: HTML document text
    

    我赛,竟然是HTML,这次终于知道是为什么了。

    理由如下:

    文件的下载链接不是直接指向文件,而是先指向一个页面,在这个页面里才是真的下载链接,所以在前一个页面上直接保存文件,实际上保存的是一个页面。

    假如属性是bz文件,就用bz文件的解压方式。

    补充一下file命令:

    通过file指令,我们得以辨识该文件的类型。

    参  数:
     -b  列出辨识结果时,不显示文件名称。
     -c  详细显示指令执行过程,便于排错或分析程序执行的情形。
     -f<名称文件>  指定名称文件,其内容有一个或多个文件名称呢感,让file依序辨识这些文件,格式为每列一个文件名称。
     -L  直接显示符号连接所指向的文件的类别。
     -m<魔法数字文件>  指定魔法数字文件。
     -v  显示版本信息。
     -z  尝试去解读压缩文件的内容。

     2.重新获取tar包路径,先用浏览器打开,从弹出来的save 对话框里获取下载链接

    这次就完美了!

  • 相关阅读:
    求最大的矩形(悬线法)
    限制不互素对的排列(构造)
    括号(构造)
    G. 4.奶牛(二进制枚举)
    新飞行棋(上楼梯)
    小天狼星的访问
    欧拉筛线性筛法,约数和和约数个数
    Find The Multiple
    How Many O's? UVA
    GCD LCM UVA
  • 原文地址:https://www.cnblogs.com/yajing-zh/p/4952940.html
Copyright © 2011-2022 走看看